首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我需要了解枚举在java示例中的行为?

我需要了解枚举在java示例中的行为?
EN

Stack Overflow用户
提问于 2012-06-22 00:12:48
回答 5查看 3.8K关注 0票数 1

第一个是enum类

代码语言:javascript
运行
复制
enum coffeeSize{
    BIG(8), HUGE(10), OVERWHELMING(16);
    private int ounces;
    coffeeSize(int ounces ){
        this.ounces = ounces;
    }
    public int getOunces(){
        return ounces;
    }

}

这是类CoffeeTest1和main

代码语言:javascript
运行
复制
 public class CoffeeTest1 {
      coffeeSize size;

      public static void main (String args[]) {
          CoffeeTest1 drink1 = new CoffeeTest1();
          drink1.size = coffeeSize.BIG;

          System.out.println(" " + drink1.size.getOunces());
      }
}

以下是输出

代码语言:javascript
运行
复制
8  

我的问题是:我不明白drink1.size.getounces()是如何输出8的。我还没有给出构造函数coffeeSize(8)对象(例如:coffeeSize somex = new coffeeSize(BIG))。我想知道这背后的简单微妙的逻辑。有人能帮我理解一下吗?

EN

Stack Overflow用户

发布于 2012-06-22 00:18:34

当您指定BIG(8)时,您正在创建它,将8传递给它的构造函数(10或16)。当您使用它coffeeSize.BIG.getOunces()时,您就是在调用它的方法getOuncesBIGHUGEOVERWHELMINGcoffeeSize的可能值,每个值都有自己的状态。

票数 0
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11142353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档