我正在类中使用“Flags”接口(interface)。我们就这样调用它吧
public interface Flags
我希望能够使用一个对象实现 Flags 接口(interface),并让它继承我放入其中的所有子标志。示例
public interface Flags{
static int flag1 = 0;
public interface Size{
public static int big = 1;
public static int small = 2;
public interface Direction{
public static int left = 3;
public static int right = 4;
所以我想要的是让对象 Foo 实现 Flags 类
public class Foo implements Flags{}
并且可以访问所有子标志(即左、右、大、小、flag1)。
但我也想要它,以便我可以让 Foo1 实现 Size 并且只能访问 Size 标志
public class Foo1 implements Flags.Size{}
我找到了这个Can we define an interface within an interface?这表明嵌套接口(interface)是可能的,但我不确定如何以我正在寻找的方式执行此操作。
我尝试过简单地做我正在寻找的事情,但这变成了巨大的痛苦。 我的意思是,如果我希望 Foo 访问 flag big,我必须执行以下操作
public class Foo implements Flags{
final int size = Size.big;
}
这远非理想。我更愿意执行以下操作
public class Foo implements Flags{
final int size = big;
}
最佳答案
为什么您不使用枚举来实现此行为?您应该为此使用枚举,因为这些是静态值 enum tutorial .
关于java - java中的嵌套接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43215483/