Java三大特性之继承与多态的简单理解

我们知道,封装性、继承性与多态性是java的三大特性。

其中继承是很重要的特性,继承的核心在于共性的抽取,子类继承父类,new一个子类,可以访问子类的成员变量和成员方法,如果成员变量或者成员方法不存在的话则向父类查找,以此类推。再比如,new一个父类,可以访问父类的成员变量和成员方法,如果成员变量或者成员方法不存在的话则向父的父类查找,以此类推。抽象类就是继承的典型应用,抽象类必须由子类继承且覆盖重写抽象方法,再new这个子类。继承的内存演示图如下:

Java三大特性之继承与多态的简单理解_第1张图片

多态建立与继承的基础之上,核心在于左父右子,父类引用指向子类对象。两种应用:父类 = new 子类、接口 = new 实现类。

当直接访问成员变量的时候,优先是父类或者接口的成员变量,没有则向上查找。当访问成员方法(包括get、set方法)的时候,优先是子类或者实现类的成员方法,没有则向上查找。

 

你可能感兴趣的:(java)