Java泛型类中的超类

Wondestarc

这是我第一次来这里,但我会尽力描述我的问题:

我有一个抽象课A我也有抽象类BC扩展A然后我有扩展B或的C

现在我有一个通用类,只接受扩展类Aclass XYZ<ABC extends A>…

现在,我基本上想创建一个适用于泛型类的方法,但仅适用于使用扩展类的实例B

我尝试过这样的事情:

public void method(XYZ<B> t){}

可悲的是这没有用。IDE希望我拥有类型t或相反的类型

现在的问题是:
为什么这行不通?似乎不会造成任何问题,因为子类必须提供超类的所有方法。
除了为B的每个子类创建方法或更改我要使用的对象的类型之外,是否有其他方法可以解决?

示例代码:

public class main {

public static void main(String[] args) {
    ArrayList<Abc> foo = new ArrayList<>();
    xyz(foo);
}
private void xyz(ArrayList<B> abs){}


private static abstract class  A{}
private static abstract class  B extends A{}
private static abstract class  C extends A{}
private static class Abc extends B{}
}
希拉里奥·费尔南德斯(Hilario Fernandes)

像这样尝试:

public class Main {

    public static void main(String[] args) {
        ArrayList<Abc> foo = new ArrayList<>();
        xyz(foo);
    }

    private static <T extends B> void xyz(ArrayList<T> abs){
        System.out.print("running xyz");
    }


    private static abstract class  A{}
    private static abstract class  B extends A{}
    private static abstract class  C extends A{}
    private static class Abc extends B{}
}

似乎是您的目标。看看这里获取更多信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java中的泛型超类

来自分类Dev

超类中的泛型关系

来自分类Dev

Java中的泛型类

来自分类Dev

在泛型类中实例化 Java 泛型类

来自分类Dev

Javapoet超类泛型

来自分类Dev

当超类是Swift中的泛型类时,如何继承超类

来自分类Dev

java类中的多个泛型类型

来自分类Dev

在java中扩展多个类的泛型

来自分类Dev

有什么方法可以在超类中定义泛型方法以引用继承类的类型?

来自分类Dev

Java泛型类工厂

来自分类Dev

C ++中的泛型类

来自分类Dev

泛型混淆:在编译时未定义泛型超类中的此类类型吗?

来自分类Dev

庞大的Java类层次结构中繁琐的泛型声明

来自分类Dev

Java在类中相互交叉泛型

来自分类Dev

如何从泛型方法参数中获取Java类?

来自分类Dev

Java中具有泛型类的树遍历

来自分类Dev

如何在Java中创建泛型类的实例?

来自分类Dev

如何从Java中的泛型类型推断类?

来自分类Dev

从Java中的枚举属性获取泛型类的实例

来自分类Dev

从 Java 中的匿名泛型类调用重载方法

来自分类Dev

Kotlin 和 Java 中带有嵌套类的泛型

来自分类Dev

java中带有泛型的类字面量

来自分类Dev

java中泛型类中的非泛型构造函数

来自分类Dev

是否可以映射(JPA)在抽象超类中使用泛型的Java类型层次结构?

来自分类Dev

超类的Java泛型,但并非所有子类都希望定义类型参数

来自分类Dev

Java泛型,将T方法称为T而不是其超类

来自分类Dev

Java扩展具有特定类型的超类的泛型方法

来自分类Dev

使用超类作为泛型子类型中的类型参数

来自分类Dev

如何正确创建在Java中扩展泛型接口的有界泛型类