这在java中是什么类型的变量声明

这在java中是什么类型的变量声明,java,Java,什么类型的变量是size 是freshjuice大小将大小声明为实例变量的简单方法?是。大小的变量类型是enum FreshJuiceSize在您的示例中,size是类型为FreshJuiceSize的成员变量(将enum约束为您定义的3个值) 也许让它看起来不寻常的是缺少访问修饰符:public、protected或private。对于没有声明访问修饰符的成员,它是“包私有的”,这意味着同一个包内的其他类可以访问它,但包外的类不能访问它。上的Java文档对此进行了描述 是鲜汁大小;将大小声明为

什么类型的变量是
size


freshjuice大小
大小
声明为实例变量的简单方法?

是。大小的变量类型是
enum FreshJuiceSize

在您的示例中,
size
是类型为
FreshJuiceSize
的成员变量(将
enum
约束为您定义的3个值)

也许让它看起来不寻常的是缺少访问修饰符:
public
protected
private
。对于没有声明访问修饰符的成员,它是“包私有的”,这意味着同一个包内的其他类可以访问它,但包外的类不能访问它。上的Java文档对此进行了描述

是鲜汁大小;将大小声明为实例变量的shorhand方法


您只是在创建一个类型为
freshjuice-esize
的引用,它是一个带有一组预定义常量的枚举。没有“短手”或“长手”。

大小根据新鲜果汁大小类型而定
FreshJuiceSize是一个枚举,因此大小只需要{SMALL,MEDIUM,LARGE}集合中的一个

FeshJuice是一个类-很可能是私有的-而不是主类-从缺少公共类类名声明的情况判断-FreshJuiceSize是枚举名(类似于数组的名称),FreshJuiceSize大小;将变量size声明为FreshJuiceSize的成员(我忘记了术语)

什么是“longhand”形式?它只是一个枚举类型。FreshJuiceSize也可以重命名为just size,因为它已经封装在FreshJuice中。不涉及整数。您可以找到Enum类的源代码,枚举变量的位置是int,Enum本身只是映射它们。这是实现细节。它不应该与普通用户相关。这是否是
enum
的正确经验法则。超过2个不同的值使用enum,否则使用boolean@user2650277对于你的问题,我会说不。Enum还使命名更有意义。想象一下enum性别。如果要使用布尔值,
true
表示男性还是女性?@user2650277,有时即使只有两个不同的值,也可以使用
enum
使代码更具可读性。这样,您就可以在方法调用中传递更具描述性的
enum
值,而不是试图记住该特定方法调用的
true
false
的含义。您还可以在
enum
上实现自定义方法。与使用
boolean
相比,设置它需要更多的代码,因此这是一种折衷。
class FreshJuice {
   enum FreshJuiceSize{ SMALL, MEDIUM, LARGE }
   FreshJuiceSize size;
}