gpt4 book ai didi

java - 调用泛型类型的方法

转载 作者:行者123 更新时间:2023-12-01 21:59:28 24 4
gpt4 key购买 nike

我是 Java 新手。请帮我处理这段代码。

我正在创建一个带有通用参数的实用程序类。在实用程序类的API中,我调用了一些泛型类型的API。

我假设此类的用户将仅传递实现了此 API(在我的例子中为 getInt)的泛型。

public class Utility <DataType> {

private DataType d;

public Utility (DataType d_)
{
d = d_;
}

public int getValue ()
{
return d.getInt();
}
}

请指出我在这里做错了什么。

d.getInt() 中的编译错误。无法解析 getInt 方法。

我添加了抽象接口(interface):

abstract interface DataType {
public int getInt();
}

仍然出错。

最佳答案

这可能就是您正在寻找的:

而不是 Utility<DataType> ,您需要一个类型占位符。将其替换为 Utility<T>并替换所有 DataTypeT

public class Utility <T extends DataType> {

private T d;

public Utility (T d_)
{
d = d_;
}

public T getValue ()
{
return d;
}
}

关于java - 调用泛型类型的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33806513/

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