5、面向对象的三大特性
封装
- 一个对象把属性和行为封装为一个整体
- 封装是一种信息隐蔽技术
- 目的是使对象的使用者和生产者分离
- 从程序开发者来看,对象是一个程序模块;从用户来看,对象为他们提供了所希望的行为。
- 一般提供 getter 和 setter 方法来获取和修改属性
继承
- 是父类和子类之间共享数据和方法(非私有化)的机制
- 在定义和实现一个类的时候,可以在父类的基础上进行(把父类的内容作为子类的内容并加入新的内容)
- 子类继承一个父类叫单重继承,继承多个父类叫多重继承
多态
- 不同对象收到同一消息可以产生完全不同的结果
- 受到继承的支持,利用类的继承的层次关系,把通用功能的消息放在高层次,不同实现的放在低层次
- 父类名 对象名 = new 子类名
- 编译看左边,运行看右边
形式
- 参数多态:应用广泛,是最纯的多态
- 包含多态:子类型化
- 过载多态:同一个名字在不同的上下文中所代表的含义不同
动态绑定和静态绑定
- 编译为静态绑定
- 运行的时候为动态绑定
- 编译看左边,运行看右边
