gpt4 book ai didi

java - 定义一个扩展java中类的属性

转载 作者:行者123 更新时间:2023-12-01 23:48:42 24 4
gpt4 key购买 nike

我有以下类(class):

class Foo {
public void sayHello(){
System.out.println("Hello");
}
}

我希望另一个类保存对扩展 Foo 的类的引用(但不能是 Foo)。像这样的东西(错误的语法):

class Bar {
private <E extends Foo> E mFoo;
}

这可能吗?我怎样才能做到这一点而不像这样在类名中声明它?

class Bar <E extends Foo> {
private E mFoo;
}

最佳答案

如果你能让 Foo 成为一个抽象类,如果要点是 E 不能是 Foo 的实例,就可以解决这个问题。如果 Foo 不是抽象的,你仍然可以这样做

public abstract class AbstractFoo extends Foo {
}

然后将 E 声明为 AbstractFoo 类型。

关于java - 定义一个扩展java中类的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16624201/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com