三大特征
一、封装
提供方法接口,而对内部实现进行隐藏。
二、继承
继承分为两种:实现继承和接口继承。
实现继承:子类可以继承父类的属性和方法,并在父类的基础上进行扩展或重写父类方法。
接口继承:仅使用属性和方法的名称、但是子类必须提供实现的能力。
三、多态
父类(基类)引用指向子类对象,使得父类引用可以有许多不同的实现方法。
子类(派生类)的功能可以被父类的方法或引用变量所调用,这叫向后兼容,可以提高可扩充性和可维护性。 //多态的真正作用,
五大原则
1.单一职责原则,指一个类的功能要单一,不能包罗万象。
2.替换原则。指子类可以替换父类并出现在父类能出现的任何地方。比如公司搞年会,所有员工都能参与抽奖,不管是新员工,还是老员工。
3.开放封闭原则,一个模块在更改性方面应该是封闭的,在扩展性方面应该是开放的。比如一个网络模块,原先只有服务端的功能,现在我要加入客户端的功能。
4.依赖倒置原则:就是要依赖于抽象,不要依赖于具体。简单的说,就是要对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块之间的耦合。
5.接口隔离原则:不同的模块要通过抽象接口隔离开,而不是通过具体的类强耦合。