java面向对象中的封装、继承和多态

首先我们要先了解什么是封装、继承和多态?

1.封装

1.1什么是封装?

首先先将对象抽象成一个类,然后将这个对象拥有的属性和方法隐藏起来(private修饰符修饰),然后只保留特定的方法与外界进行交互。

1.2为什么需要封装?

以为封装要符合面向对象设计原则的第一条:单一性原则,一个类把自己该做的事情封装起来,而不是暴露给其他类去处理,当内部的逻辑发生变化时,外部调用不用因此而修改,他们只调用开放的接口,而不用去关心内部的实现

2.继承

2.1什么是继承?

继承是从已有的类中派生出新的类,新的类能吸收已有类的属性和行为,并能扩展新的能力。

2.2继承的特征有哪些?

(1)继承具有传递性  A extends B ; B extends C 那么C也具有A中的非private的属性和方法。

(2)提高了代码的复用性。

(3)通过增强一致性,增强了代码的可维护性。

(4)子类不能继承父类中被private修饰的属性和方法。

(5)子类可以重写父类里面的方法,也可以添加自己的方法。

(6)类可以是单继承,多实现。(也就是说,只能继承一个类,但是能够实现多个接口)

(7)当对子类实例化的时候,首先调用父类的构造函数,再调用子类的构造函数。如果父类的构造函数中,写了自定义的构造函数,那么子类要有super()来调用父类的构造函数,不过super()只能写在构造函数的第一行。


3.多态

3.1什么是多态?

允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采取多种不同的行为方式。

3.2多态的作用是什么?

消除类型之间的耦合性。而实现多态的技术是:动态绑定(是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法)。

3.3如果想要实现多态性的前提是什么?

(1)要有继承关系。

(2)要有方法的重写。

(3)父类引用指向子类对象。

3.4多态性的特征有哪些?

(1)可替换性

(2)可扩展性

(3)简化性


猜你喜欢

转载自blog.csdn.net/qq_35221138/article/details/53470550