C# 继承

160 阅读1分钟

继承

1.作用:最大限度减少代码冗余,减少代码重复率,提高程序运行效率
基本语法
class 类名 : 被继承的类名

创建

    //第一个类
    class Teacher
    {
        public string name;
        public string id;

        public void Eat()
        {
            Console.WriteLine("老师在吃饭");
        }
    }
    
    
    //第二个类
    //(语法) class 类名 : 被继承的类名
    class Teachering_Teacher : Teacher
    {
        public string subject;
        
        //C#中允许子类存在和父类同名的成员,去掉波浪线提示用 new,不建议写
        //public new string name;
        
        //用保护(protected )修饰的成员,只有内部和子类才能使用
        //用私有(private)修饰的成员,只有内部才能使用,子类不能使用
        private int a;
        protected string cls;
        protected void Teachering()
        {
            Console.WriteLine("{0}老师教{1}", name,subject);
        }
    }
    
    //第三个类
    //(语法) class 类名 : 被继承的类名
    class ChineseTeacher : Teachering_Teacher
    {
        public void Chinese()
        {
            Console.WriteLine("{0}老师教{1},{2}", name, subject,cls);
        }
    }

使用

            Teachering_Teacher tt = new Teachering_Teacher();
            tt.name = "张三";
            tt.id = "1";
            tt.Eat();
            tt.subject = "数学";
           

            ChineseTeacher ct = new ChineseTeacher();
            ct.name = "李四";
            ct.id = "1";
            ct.subject = "语文";
            ct.Chinese();
特性
1.单根性:

只能继承一个父类

2.传递性:

之类可以继承父类的父类...的所有内容

3.访问修饰符(protected)

只有内部和子类才能使用

4.不建议使用:

C#中允许子类存在和父类同名的成员,去掉波浪线提示用 new