gpt4 book ai didi

java - 克隆()不可见

转载 作者:行者123 更新时间:2023-11-29 03:46:17 25 4
gpt4 key购买 nike

我有一个类:

public class CounterBag<T extends Additive<T> & Cloneable & Serializable> {
private T cntData;

// c'tor, accessors equals and hashcode...
public T getCounterData() {
return cntData;
}
}

其他类Service有一个 Set<CounterBag> 类型的成员.现在里面 Service我想查找特定的 CounterBag并返回其 cntData 的克隆成员(member)。

Service 的查找方法中类我检测到 CounterBag 的实例在集合中尝试以下操作:

return counterBag.getCounterData().clone();

clone()似乎不可见。

我想知道制作 clone() 需要做什么可见的?

最佳答案

Cloneable 没有(重新)声明 clone 方法,它只是继承自 Object。这意味着 T 的实例不知道有一个可见的 clone 实现。定义您自己的 Cloneable 子接口(interface),它声明 clone 并将其用作 T 上的绑定(bind)。如果因为无法控制各种具体的 T 而不能,那么您将不得不求助于反射。 :(

关于java - 克隆()不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10716734/

25 4 0
文章推荐: sql - 基于从另一个表中选择的值进行限制
文章推荐: java - Eclipse 插件 - 如何在 View 插件中打开编辑器
文章推荐: java - 根据 javabean 值隐藏 '
'
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com