- 继承:继承是一种“is a”的关系,即:子类是父类。子类除了能够代替基类外,还具有自身的特殊属性和方法。继承可以归纳为三句话:
一、子类拥有基类非private的属性和功能;
二、子类具有自己的属性的功能,即子类可以扩展基类没有的属性和功能;
三、子类还可以以自己的方式实现基类的功能(override)
- 封装:每个对象都包含它能进行操作所需的所有信息,对象不必依赖其他对象来完成自己的操作。
封装的好处:一、良好的封装能够减少耦合;二、类内部的实现可以自由的修改;三、类具有清晰的对外接口。
- 多态:不同的对象可以执行相同的操作,但是要通过自己实现代码的方式来执行。这个相同的操作,在基类里面用虚方法来声明。
- 只要类里面声明了抽象(abstract)方法,它就是一个抽象类,不能被实例化。
- 接口:接口是把隐式公共方法和属性组合起来,以封装特定功能的一个集合。接口是对行为的抽象,一个类可以实现多个接口,因为一个类具有多个行为,但是它只有一个基类(区别于C++)。