面向对象三大特征:继承、封装、多态。
封装:将同一类事务的特征和功能包装在一起,只对外暴露需要调用的接口
最好体现了封装特性的就是:接口(interface)
在接口中只有一些方法声明,为其实现类中对接口方法的逻辑代码实现。但当我们在调用时,通常是调用的接口中的方法。
而是使用者只需要知道接口有哪些方法,方法有什么用就可以了。而不用要知道其实现类中具体的执行过程。
封装的优势:
-
1,实现专业分工,使用者只要了解怎么使用就可以了,开发者只要了解如何实现接口方法就可了。
-
2,减少代码的耦合
-
3,对类的内部结构可以自由修改
继承(面向对象最显著的特征):
从已有的类中,派生新的类。新的类可以实现又有类的属性和行为,并扩展新的能力。
注意:java中,类是不支持多继承的(一个类只能有一个父类,便于管理),而一个接口可以实现多个其它接口。
父类是子类的抽象总结,子类是父类的具体实现
动物--》食草动物--》羚羊、兔子、斑马
作为子类,既能使用父类的一些元素,又可以扩展自己的行为
实际工作中,继承主要使用在代码的抽象上,例如,现在有两个类,一个类是向表a插入数据,一个类是向b表插入数据。插入数据需要先获取数据库的链接,我们就可以针对这两个类抽象出一个父类,父类中实现数据库连接的方法。这两两个子类都可以直接使用此方法。
接口--的目的是,用于约束程序的行为。对于外侧使用者,暴露哪些方法
继承--更多的是用于实现类之间代码的重用,为了程序的健壮性和可靠性服务。

多态(三大特性中最重要的特性,封装和继承都是为多态服务的):
多态--是一个行为具有不同的实现形式好形态的能力。多态是同一个接口,使用不同的实例而执行的不同的操作。(例如:导出的接口,有导出excel和导出text文本)