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
学习整理多态继承接口
最新推荐文章于 2024-04-27 13:19:40 发布