在独立包中使用嵌套枚举作为参数

时间:2010-12-22 22:04:46

标签: java enums packages

java新手,并提出与包相关的问题。

我喜欢将对象组织在命名空间中,并且遇到了我无法弄清楚的枚举问题。

说我有这样的嵌套枚举:

package Project;
public class Foo
{
    public enum Bar { One, Two, Three };
}

我想做这样的事情

package Project.Attributes;
public class Foo
{
    public setBar( Project.Foo.Bar bar ) {}
}

但我收到名称冲突和未知包'Foo'错误。

我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:3)

在以下更正之后应该有效

    包裹声明后
  1. 分号
  2. 为setBar(...)方法添加void返回类型
  3. 还有一个建议是使用小包作为包名。

    package project;
    
    public class Foo
    {
        public enum Bar {
            One, Two, Three
        };
    }
    
    
    package project.attributes;
    
    public class Foo
    {
        public void setBar(project.Foo.Bar bar)
        {
        }
    }
    

答案 1 :(得分:2)

您需要在第一行的末尾添加分号。并使用小写字母表示包名