一.封装
就是隐藏对象的属性和实现细节,仅对外提供公共的访问方式。
-
封装的好处:隐藏类的实现细节;让使用者只能通过程序员规定的方法来访问数据;
-
封装的思想保证了类内部数据结构的完整性,使用户无法轻易直接操作类内部的数据,这样降低了对内部数据的影响,提高了程序的安全性和可维护性。
封装的使用
1)、修改属性的可见性 ——> 设为private
2)、创建共有的 getter / setter方法 ——> 用于操作属性的读写
二.继承
Java中的继承是指在一个现有类(父类)的基础上在构建一个新类(子类),子类可以拥有父类的成员变量以及成员方法(但是不一定能访问或调用,例如父类中private修饰的私有的成员变量以及方法不能访问和调用)。继承的作用就是能提高代码的复用性。子类拥有父类中的一切(拥有不一定能使用),它可以访问和使用父类中的非私有成员变量,以及重写父类中的非私有成员方法。
java 中实现代码重用的重要手段之一,java中只支持单继承,即每个类只能有一个父类。继承表达的是 is- a 的关系,或者说是一种特殊和一般的关系. 在java中,所有的java类都直接或间接的继承了java.lang.Object类,Object类是所有java类的祖先,在定义一个类时,没有使用 extends 关键字,那么这个类默认继承Object类.
三.多态
是指允许不同子类型的对象对同一消息作出不同的响应。
“一个接口,多种方法”:同一操作作用于不同的对象,可以有不同的响应,产生不同的执行结果。
多态的三个条件:
a. 继承的存在(继承是多态的基础,没有继承就没有多态).
b. 子类重写父类的方法(多态下调用子类重写的方法).
c. 父类引用变量指向子类对象(子类到父类的类型转换).
重载(overload)和重写(override)是实现多态的两种主要方式。
编译时多态和运行时多态: