我是Java新手。最近,我读到了有关内部接口的信息,这让我感到非常困惑:首先,为什么要使用它们,其次,为什么它们也可以声明为私有的,而不是外部接口。我认为界面应该是公共的,以便所有人都可以使用。
答案 0 :(得分:1)
内部接口或嵌套接口的主要目的是对相似的事物进行分组。考虑集合中的Map接口。它具有一个称为Entry的嵌套接口。没有映射就不能存在条目,因此从逻辑上讲将它们组合在一起是有意义的。另一方面,可能会有其他名为Entry的接口,这将导致名称空间冲突。因此,使用了嵌套接口。 为了回答另一个问题,在任何情况下使用访问修饰符都是为了防止未经授权的访问。将嵌套接口设为私有将阻止其他开发人员以不希望的方式实现它们。 希望这会有所帮助。
答案 1 :(得分:1)
在Java中使用内部接口的目的如下
可以将嵌套接口声明为public,private或protected。 这与顶级接口不同。必须将顶级接口声明为public或使用默认访问级别。
在另一个接口的主体中声明内部接口。
<html>
<head>
<link href="css/style.css" rel="stylesheet">
<link href="css/style2.css" rel="stylesheet">
<script src="js/script.js"></script>
<script src="js/scipt2.js"></script>
</head>
<body>
<----------HTML---------->
</body>
<script src="js/secret.js"></script>
</html>
在另一个类的主体中声明内部接口。
public interface Items {
interface MyList {
}
}
最后,我们可以按照以下步骤实施
public class Items{
public interface MyList {
void add(Items items);
String getItesmNames();
}
}
当嵌套接口在其封闭范围之外使用时,必须通过其所属的类或接口的名称进行限定。