C#学习笔记之七
继承最主要的好处:代码重用
可继承性:C#能继承的成员是字段、属性、方法、事件、索引指示器;不可继承的为值类型、构造函数、析构函数;
规则:单继承、可传递、可添不可删;
成员访问修饰符:
修饰符 对外是否可见 对派生类是否可见 public 是 是 private 否 否 protected 否 是 internal 是(本程序集) 是(本程序集) internal protected 是(本程序集) 是 BASE(1)在派生类中访问基类成员:base.基类字段; base.基类方法名();
BASE(2)指定创建派生类实例时应调用的基类构造函数;调用和执行顺序为:基类构造函数-派生类构造函数;
多态指不同对象收到相同消息会产生不同动作,从而实现多个目的;方法重写(重载)是实现多态的一种重要方式;
方法重载要注意方法名要相同、参数表必须不同和返回类型及修饰符可以相同也可以不同;
虚方法定义virtual;虚方法重载时override;派生类没有自己的虚方法时将调用基类的虚方法;多层继承时,派生类如果没有虚方法将会查找最近的一个重写的 方法并执行;
编译多态性使程序更快,运行时的多态性有高度灵活性;
抽象类与抽象方法声明abstract;抽象方法没有实现,声明后直接用";"结束,抽象方法只能在抽象类中声明,并且不能使用static声明;抽象类作为其他类的基类不能实例化;从抽象类派生的非抽象类必须实现所有方法,派生类中不能使用base访问抽象方法;可以用抽象方法重写基类的虚方法;
密封类与密封方法声明sealed;为防止类被无限制的继承;密封类不能是抽象类;密封方法必须对基类的虚方法重载,因此sealed必须和override一起出现
上一篇:谷歌眼镜实际应用 应用开发不复杂
下一篇:C#学习笔记之八