关闭

学习整理多态继承接口

标签: 多态继承
325人阅读 评论(0) 收藏 举报
分类:
new  
1.调用构造函数
2.开辟内存空间

接口
	//接口中的成员不能有实现
        //接口中不能有字段(因为字段中有实现)
        //不能有访问修饰符

工厂提取方法的总和  一般根据继承和多态来使用

virtual  A  a =new B()  B.Method  如果重写执行b的方法 如果没重写的话执行父类A的方法

封装 把一段代码封装到一个方法里
继承 可以让代码重用
多态好处 为了程序的可扩展性

存储区==========栈,堆,静态存储区

静态属性,静态方法存储在静态储存区 只有程序结束的时候才被释放

执行方法之前调用构造函数

反射窗体的时候复制控件的时候要设置子窗体的layout事件当load()事件用


继承 构造函数
public Son(string lastname, string property, string bloodtype)
            //:base(父类中的字段)
            : base(lastname, property, bloodtype)
 {

 }

多态的两种实现方法- (虚方法和抽象方法)

->虚方法(virtual)

	重写override的方法 父类必须是虚方法virtual
	子类可以使用override重写虚方法  也可以不重写
	虚方法必须要有实现  大括号{}
	虚方法不能出现在密封类(sealed)

->抽象类和抽象方法(abstract) 

     抽象类
   	不能被实例化的类  不能去new 
	!!抽象类用于实现继承和多态
	抽象类中可以包含抽象成员,也可以不包含
	抽象类不能被密封(sealed)
    抽象方法
        抽象方法不能有方法体
	抽象方法必须在抽象类中.
	抽象方法必须被子类重写(override),除非子类也是抽象类


多态

  ->多态的作用:把不同的子类对象当做父类来看,可以屏蔽不同子类对象的差异
  ->里氏替换原则
  ->父类引用指向子类对象
   Person p=new Chinese();(隐式类型转换)
   
   p is student --判断p是否是student
   p as student  (student)p 





0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:19233次
    • 积分:560
    • 等级:
    • 排名:千里之外
    • 原创:39篇
    • 转载:1篇
    • 译文:0篇
    • 评论:1条
    文章分类
    最新评论