1 封装继承多态
2 重写overwrite(new) 覆写override 重载overload(方法)
3 抽象类接口
面向对象:OO
封装:隔离,外部不用关心怎么实现,只要接口不变,内部可以随意扩展;
数据安全 private protected 数据结构,只能通过公开方法来访问,而不是随便改
降低耦合 提高重用性 尽量隐藏更多的东西
private protected internal public
继承:子类拥有父类的一切属性和行为 代码重用
单继承,也就是只有一个父类
重写 覆写 重载
多态:一个类可以用过多个类型,就是多态 当然还有方法
编译时多态;运行时多态;
接口多态;继承多态;
接口抽象类:
抽象类:是一个父类+约束 父类是代码重用 约束是为多态变化 单继承
接口:就是一个约束 只有多态变化 多实现
抽象类的出发点应该是代码重用,是为了当父类 is a
接口纯粹为了约束,告诉别人一定有什么功能 can do
经验:
如果需要约束,一般选择接口,除非有代码需要重用