我EnumSet<Foo>
在多个地方使用。我想创建一个EnumSetFoo
类,所以我可以这样做EnumSetFoo xyz = EnumSet.of(Foo.BAR)
,但子类EnumSet
化似乎不是要走的路。有没有办法在Java中实现这种效果?
问问题
211 次
1 回答
0
Java 没有 typedef,但EnumSet.of()
返回一个 typed EnumSet
,你不应该再需要任何东西了。
您无需将其转换为任何内容即可使用返回的内容:
EnumSst<Foo> e = EnumSet.of(Foo.BAR);
如果您真的想使用自己的类,请提供适当的构造函数并将上述内容传递给它,或者将枚举的实例传递给类型化的可变参数构造函数:
public class EnumSetFoo extends EnumSet<Foo> {
public EnumSetFoo(Foo... foos) {
addAll(Arrays.asList(foos));
}
}
管他呢。
于 2013-07-20T07:10:51.517 回答