第一个是enum类
enum coffeeSize{
BIG(8), HUGE(10), OVERWHELMING(16);
private int ounces;
coffeeSize(int ounces ){
this.ounces = ounces;
}
public int getOunces(){
return ounces;
}
}这是类CoffeeTest1和main
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());
}
}以下是输出
8 我的问题是:我不明白drink1.size.getounces()是如何输出8的。我还没有给出构造函数coffeeSize(8)对象(例如:coffeeSize somex = new coffeeSize(BIG))。我想知道这背后的简单微妙的逻辑。有人能帮我理解一下吗?
发布于 2012-06-22 00:18:34
当您指定BIG(8)时,您正在创建它,将8传递给它的构造函数(10或16)。当您使用它coffeeSize.BIG.getOunces()时,您就是在调用它的方法getOunces。BIG、HUGE和OVERWHELMING是coffeeSize的可能值,每个值都有自己的状态。
https://stackoverflow.com/questions/11142353
复制相似问题