面向对象的特征体现在哪些方面:
1,封装
封装的概念:
隐藏对象的属性和实现细节,仅对外公开接口,外界可以通过get/set方法进行访问。
封装的目的:
①从广义上来讲,就是对于一些公共代码的抽取,生成一个工具类,我们需要使用这个方法时,就不需要再重新写一遍这个代码啦,直接调用工具类就可以啦。例如:JDBC工具类,文件上传工具类等
②从狭义上来讲,就是属性私有化,使用private关键字修饰属性;
生成get/set方法,方便外界对于属性和方法的调用
减少了代码的耦合性。
2,继承(extends关键字)
继承的概念:
指一个类可以使用另一个类中的属性和方法(私有属性和私有方法除外),主要参考就是servlet继承体系。继承一般发生在父子类中。
继承的目的:
可以不需要在子类中写不需要的方法,直接定义一个抽象父类,需要继承的方法使用public修饰,不需要的使用private修饰,提高了代码的扩展性。
super关键字:
子类可以通过super调用父类中的属性和方法(私有属性和私有方法除外)
3,多态
多态的概念:
一般发生在父子类中,指不同子类对象对于同一父类发出的同一消息做出的响应。
多态的目的:
很好的解决了程序函数同名的问题。
4,抽象
抽象的概念:
指将具有公共特征的一类事物抽取出来,不注重实现的细节。
抽象类:
使用abstract修饰的类,不能实例化对象。
抽象方法:
只有方法的声明,没有方法的实现。
使用abstract关键字修饰的类叫抽象类,使用abstract关键字修饰的方法叫抽象方法