下面的类是一个Java类,其中我已经看到了静态接口在该类中,我从未见过的该静态接口的用途是什么,以及创建这样的接口有什么优势
public class Validator {
public static interface ItemValidator {
public int withinTolerance(Number value, Number oldValue);
}
}
答案 0 :(得分:-1)
在另一个接口或类中声明的接口称为嵌套接口。它们也称为内部接口。由于不能直接访问嵌套接口,因此使用它们的主要目的是通过将相关接口(或相关接口和类)分组在一起来解析名称空间。这样,我们只能通过使用外部类或外部接口名称后跟dot(。),再使用接口名称来调用嵌套接口。
示例:Map接口内部的Entry接口是嵌套的。因此,我们通过调用Map.Entry来访问它。
注意:
默认情况下,嵌套接口是静态的。您不必显式地将它们标记为静态,因为这将是多余的。 在类内部声明的嵌套接口可以使用任何访问修饰符,但是在接口内部声明的嵌套接口是隐式公开的。 示例1:在另一个接口内部声明的嵌套接口
interface MyInterfaceA{
void display();
interface MyInterfaceB{
void myMethod();
}
}
class NestedInterfaceDemo1
implements MyInterfaceA.MyInterfaceB{
public void myMethod(){
System.out.println("Nested interface method");
}
public static void main(String args[]){
MyInterfaceA.MyInterfaceB obj=
new NestedInterfaceDemo1();
obj.myMethod();
}
}