这两种创建对象的方式有区别吗

时间:2021-05-11 03:51:29

标签: java

我刚学了java。我正在寻找这两种创建对象的方式之间的不同

public class A {
}
public class B extends A {
}
public static void main(String[] args){
       A object = new B();
       B object = new B();
}

1 个答案:

答案 0 :(得分:2)

让我们通过下面的例子来理解它。

  1. 在 A 类中,我们添加了一个 getMethodofA()。因此,将引用变量创建为 A 或 B 并不重要。由于 A 是超类 getMethodofA() 将可用于类型 A 或类型 B 的对象

  2. 在 B 类中,我们添加了一个 getMethodofB()。因此,将参考变量创建为 A 或 B 很重要。如果创建引用变量为 A 的对象,则只有 getMethodofA() 可用。而如果您使用引用变量 B 创建对象,则这两个方法都将可见 getMethodofA() 和 getMethodofB()

    libVLC