如何解决将 add() 方法覆盖到另一个 Java 类中的私有 Set<>?
我有 2 个 Java 文件:文件 1 是一个给定的数据结构类,带有 Set 的方法,我根本不允许修改这个类。文件 2 是我正在创建的一个类,它覆盖了文件 1 中的 add()
函数。
文件 1
public class MySetClass<E> {
private final Set<E> set = new HashSet<E>(); //is private
public boolean add(E element){
return set.add(element);
}
}
文件 2
public class OverrideMySetClass<E> extends MySetClass<E> {
@Override
public boolean add(E element) {
System.out.println("Overriden Add");
return set.add(element); //ERR: MySetClass<E>.set is not visible (I know it's bc it's private)
}
}
我的问题是如何将项目添加到应该覆盖 add()
的方法不可见的集合中?
解决方法
您应该能够使用 super.add(element)
与 this
指代当前对象一样,super
指代其直接父对象
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。