我有一个名为的类Property
,它只有get
-methods。创建新实例时将设置所有字段Property
。Property
实现了一个名为IProperty
.
由于我使用的库中的一些错误,我必须在Property
创建后设置 anew 实例的名称。因此,建议创建一个WrapperProperty
类,该类将提供一个公共setName
方法,该方法本身调用一个因此创建setName()
的方法Property
,该方法将是受保护/包视图。
问题是我不能让这个方法在 中受保护Property
,因为 Eclipse 告诉我将它添加到接口IProperty
并使其公开。
有一些解决方法吗?
WrapperI 属性:
public class WrapperIProperty {
private IProperty prop;
WrapperIProperty(Property prop) {
this.prop = prop;
}
public void setName(String name) {
prop.setName(name);
}
}
财产:
public class Property implements IProperty {
String name;
protected void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public int getFoobar() {
return 123;
}
public int getWhatever() {
return 987;
}
}
财产:
public interface IProperty {
public int getWhatever();
public int getFoobar();
public String getName();
}
这就是它目前的样子。显然它不起作用,因为我不能让该方法在Property
类中受到保护。因此,我最好以某种方式摆脱 interfacee 条目。但是怎么做?