为什么我们应该在Java中的类中声明接口(interface)?
例如:
public class GenericModelLinker implements IModelLinker {
private static final Logger LOG =LoggerFactory.getLogger(GenericModelLinker.class);
private String joinAsPropertyField;
private boolean joinAsListEntry;
private boolean clearList;
private List<Link> joins;
//instead of a scalar property
private String uniqueProperty;
public interface Link {
Object getProperty(IAdaptable n);
void setProperty(IAdaptable n, Object value);
}
}
最佳答案
当您想要收集对象中的某些字段以强调概念时,您可以创建一个外部类或一个内部类(称为嵌套(静态)或内部)。
如果您想强调这个协作类在原始对象使用之外完全没有任何意义(没有用处),您可以将其嵌套/内部。
因此,在处理某些层次结构时,您可以描述一个“嵌套”接口(interface)
,该接口(interface)将由包装类的子类实现。
在 JDK 中,最重要的例子是 Map.Entry
内部接口(interface),它定义在 Map
接口(interface)中,并通过 HashMap
、LinkedHashMap
等各种方式实现......
当然,Map.Entry
需要声明为 public
,以便在迭代 map 时无论代码在哪里都可以访问。
关于java - 为什么我们要在类中声明接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39376415/