初始继承和多态


继承:是使用已存在的类的定义作为基础建立新类的技术

1.1 base关键字(表示父类,可以访问父类的成员)
    eg: public Child() { }
        public Child(int age2, string name2,string homeAddress ):base(name2,age2)
        {
            this.HomeAddress = homeAddress;
        }
1.2 protected(允许被子类访问,不允许其他非子类访问)
访问限制强度:private>proteted>public

继承的特性
单根性:每一个类只能有一个直接父类
传递性:类A继承类B,类B继承类C,类A也可以获取到类C中非私有成员
 
  子类可以继承父类的哪些成员?
解:非私有的都可以(包括public proteted)

继承的价值:
1.模拟了现实的关系
2.实现了代码的重用
3.使程序结构清晰

虚方法:virtual父类中定义
语法:
     访问修饰符 virtual 返回类型 方法名()
     {
 //方法体
      }
虚方法:override子类中定义
语法:
     访问修饰符 override 返回类型 方法名()
     {
 //方法体
      }

多态:不同的对象对于同一个方法调用有着不同的结果
实现多态
实现方法重写:
1.在父类中定义方法,用virtual关键字定义为虚方法
2.在子类中定义自己的方法,用override关键字来修饰

原文地址:https://www.cnblogs.com/aaaaliling/p/8796963.html