父类和子类在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的类包含主要功能,在该功能中将创建子类的实例,并将其关联的整数值打印在屏幕上。通过创建实例并访问其关联的值并将其打印在屏幕上,可以对父类执行类似的过程。