面向对象方法的优点
1 真实的建模
2 可重用性
3 对变动有弹性(灵活性)
面向对象特性
1 继承
2 多态
3 抽象
4 封装
对象特征
1 状态(属性)
2 行为(方法)
“行为是对象如何通过其状态的变动和消息传递而发生作用与反作用”
3 本体(唯一的序列)
类定义:一组共享结构和公共行为的对象
多态
1 通过覆盖父类的方法来实现,在运行时根据传递的对象引用,来调用相应的方法。
2 不同名的一些对象对同一个消息会有不同的响应
抽象和封装
1 抽象是指区别于所有其他种类对象的对象的本质特征,因于,相对于观察者来看,它提供了清晰的,有定义的,概念边界。
2 封装是隐藏与其本质特征不起作用的对象的所有细节的过程
3 抽象和封装是互为补充的,封装通过提供了压制非本质细节手段帮助了抽象。
抽象与接口
接口是一组抽象方法。
抽象类用来实现属于同一层次的类之间的继承关系,但接口可用来实现不属于同一层次的不相关的类之间的继承关系
接口中所有的方法都是public abstract。
接口中可以有数据成员,这些成员默认都是public static final。
抽象类不能实例化对象,因为有空实现的方法,所以实例化没有意义
将对象与对象之间共有的方法抽象出来,但具体方法体由不同对象去实现。
重载构成的条件:方法的名称相同,但参数类型或参数个数不同,才能构成方法的重载。
方法的覆盖
1 在子类中定义一个与父类同名、返回类型、参数类型均相同一个方法,称为方法的覆盖。
2 覆盖发生在子类与父类之间。