gpt4 book ai didi

java - 声明扩展 2 个不同接口(interface)的类型属性

转载 作者:行者123 更新时间:2023-12-02 12:36:12 25 4
gpt4 key购买 nike

我想声明一个属性来保存实现 2 个不同接口(interface)的类的实例。我尝试过这种语法:

private <? extends Interface1 & Interface2> name;

还有这个:

private <T extends Interface1 & Interface2> T name;

这些都不起作用。是否可以?语法是什么?我试图避免声明另一个继承自 Interface1Interface2 的接口(interface)。

<小时/>

编辑:

包含此属性的类不应有任何类型参数。事实并非如此:

public class MyClass<T extends Interface1 & Interface2>{
private T name;
...
}

对于使用该类的人来说,这没有任何意义。预计该类不可能是通用的,也不符合逻辑。

最佳答案

这需要放在类声明中,例如:

public class TestG<T extends Cloneable & Serializable> {
private T name;
}

一种替代方法是将其设置在方法中(但不是变量)

public class TestG {
public <T extends Cloneable & Serializable> void method(T parameter) {
}
}

关于java - 声明扩展 2 个不同接口(interface)的类型属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13429523/

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