作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有 2 个相互交互的文件。我想定义一个枚举以使代码更具可读性,但如果我在文件 1 中定义它,文件 2 会提示不知道该枚举。如果我在文件 2 中定义了 ii,那么文件 1 也是如此。我也将其定义为公开。
解决方案是在两个文件中定义枚举,但这对我来说似乎不正确。它不仅是多余的,而且我担心它可能会导致一些冲突,即使这些类型具有相同的项目也是如此。
对此的判决是什么?是我做错了什么还是担心太多?
编辑
好吧,鉴于这里的评论,我找到了一个替代方案,它似乎可以做我想做的事,而无需创建一个新文件。我有:
文件 1
class myClass1
{
public enum MyEnum
{
...
}
...
}
文件 2
class myClass2
{
public enum MyEnum
{
...
}
....
}
现在,我有:
文件 1
enum myEnum
{
...
}
...
class myClass1
{
...
}
文件 2
class myClass2
{
...
}
我不想只为枚举创建另一个文件,所以这对我有用。好吧,只要没有问题,我认为没有问题。
最佳答案
绝对不应该在两个位置都定义枚举。我建议在具有公共(public)可访问性的自己的文件中定义枚举。那么每个人访问它应该没有问题。但是,假设您想在两个类之一中定义枚举,我将继续...
您必须导入
枚举或使用其完全限定名称。假设您在包 com.stackoverflow
中,您的类在第一个文件中应该如下所示:
package com.stackoverflow;
public class A {
public enum MyEnum {
ONE,TWO,THREE;
}
...
}
在另一个文件中:
package com.stackoverflow;
import com.stackoverflow.A.MyEnum;
public class B {
public void test(MyEnum mine) {
...
}
...
}
关于java - 关于 Java 枚举的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/587392/
我是一名优秀的程序员,十分优秀!