父类和子类在Java中具有相同的数据成员
父类可以保存对父对象和子对象的引用。如果父类变量持有子类的引用,并且在两个类中都存在该值,则通常该引用属于父类变量。这是由于Java中的运行时多态特性。
示例
以下是一个例子-
class Demo_base { int value = 1000; Demo_base() { System.out.println("这是基类的构造函数"); } } class Demo_inherits extends Demo_base { int value = 10; Demo_inherits() { System.out.println("这是继承的类构造函数"); } } public class Demo { public static void main(String[] args) { Demo_inherits my_inherited_obj = new Demo_inherits(); System.out.println("在主类中,已创建继承的类对象"); System.out.println("继承类类型的引用:" + my_inherited_obj.value); Demo_base my_obj = my_inherited_obj; System.out.println("在主类中,创建了父类对象"); System.out.println("基类类型引用 : " + my_obj.value); } }
输出结果
这是基类的构造函数 这是继承的类构造函数 在主类中,已创建继承的类对象 继承类类型的引用 :10 在主类中,创建了父类对象 基类类型引用 : 1000
说明
名为“Demo_base”的类包含一个整数值和一个打印相关消息的构造函数。另一个名为“Demo_inherits”的类将成为父类“Demo_base”的子类。这意味着'Demo_inherits'类扩展到基类'Demo_base'。
在此类中,定义了相同变量的另一个值,并且定义了子类的构造函数,并带有要在屏幕上打印的相关消息。名为Demo的类包含主要功能,在该功能中将创建子类的实例,并将其关联的整数值打印在屏幕上。通过创建实例并访问其关联的值并将其打印在屏幕上,可以对父类执行类似的过程。