java - 如何在父类(super class)中使用子类进行多态性?

标签 java oop polymorphism

你好我有以下类(class)

class A <T extends AnotherClass>{
     public static A getA(){
          return new A();
     }
}
class B<T> extends A{}
class C<T> extends A{}

我正在尝试以这种方式实现多态性:

B b = A.getA();

但是我收到以下错误:

Incompatible types requite B found A.

我该怎么做?

谢谢

最佳答案

这是可以做到的 A b = new B(); 但不是像你想做的那样反过来。
基本上,您只能将子类放入父类(super class)中,而不能将父类(super class)放入子类中

关于java - 如何在父类(super class)中使用子类进行多态性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56150280/

相关文章:

java - 选择属性以 XPath 中的某些内容开头的元素

oop - 一个类在其自身上执行功能是好的约定吗?

javascript - JavaScript 函数执行可以被中断吗?

javascript - 为什么 XML 不打算用作表示语言?

c++ - 我应该动态转换还是不转换

c# - 多态性意外结果

java - Spring 注入(inject)通用类型

java - 如何将二维数组从一个 Activity 传递到另一个 Activity (包括数组包含的所有信息)

java - 带 for 循环的字符串数组 getter 方法

rust - 特征中具有关联类型的多态结构向量