gpt4 book ai didi

java - 如何实现通用接口(interface)列表

转载 作者:行者123 更新时间:2023-12-01 18:53:24 25 4
gpt4 key购买 nike

您好,我正在编写一些有趣的代码,并且我的脑海中闪过了一个想法。

这是一些简化的代码:

public interface SomeInterFace<T>
{
public List<T> doSomething();
}

现在,我得到了另一个接口(interface),它应该为各种对象扩展这个接口(interface)

public interface OtherInterface extends SomeInterface<Integer>, 
SomeInterFace<String>, SomeInterface<Number>, ...

是否有可能以使用对象列表实现“SomeInterface”的方式编写此“OtherInterface”?

最佳答案

如果您能够处理 OtherInterface 的任何类型的类型参数,然后按照其他人的建议,您可以编写:

public interface OtherInterface<T> extends SomeInterface<T>

但是,如果您需要实现 SomeInterface仅对于特定类型参数列表(例如 StringNumber ),那么您不能这样做。在编译时,SomeInterface<(anything)>就变成 SomeInterface由于 type erasure ,并且在编译器确保您没有尝试执行任何不安全的转换(或者您告诉它不要检查)之后,会为您插入转换。因此,您将尝试编写一个如下所示的类:

public interface OtherInterface extends SomeInterface, SomeInterface {
public List doSomething();
public List doSomething();
}

...由于显而易见的原因,这是无效的!

希望有帮助!

关于java - 如何实现通用接口(interface)列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15030485/

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