why:防止外部类恶意访问本类属性
what:把字段私有化,然后生成公共属性
封装的好处
1、隐藏类的实现细节
2、只能通过规定属性访问数据
3、方便加入控制语句
4、方便修改实现
why:解决重复资源
what:一个类拥有另一个类的属性和方法,这个叫子类(派生类)
另一个类叫父类(超类、基类)
特征:
1、子类拥有父类的一切,但是不能继承私有修饰和构造方法
2、使用关键字base访问父类属性和方法
3、创建子类对象时,系统默认先调用父类构造方法,然后再次调用子类构造方法
4、子类构造方法调用父类构造方法用base
5、转型:子类可以赋值给父类,但是父类不能赋值给子类
重写:父类(virtual) 子类:override
多态why:对重复代码频繁修改
what:多人做一件事情,结果不一样
静态多态性:在编译时,方法和对象的连接机制被称为早期绑定,也被称为静态绑定。C# 提供了两种技术来实现静态多态性。分别为:方法重载、运算符重载
动态多态性是通过 抽象类 和 虚方法 实现的。
实现多态的两个要素(how):
1)子类重写父类方法
2)使用父类的类型(子类转换为父类:向上转型)



