gpt4 book ai didi

java - 关于 Java 枚举的问题

转载 作者:搜寻专家 更新时间:2023-11-01 01:07:24 25 4
gpt4 key购买 nike

我有 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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com