java静态常量的值是什么意思?

zxciop1100 2012-03-06 09:53:19
private static final int UPDATA_CLIENT = 0;
private static final int GET_UNDATAINFO_ERROR = 1;
private static final int DOWN_ERROR = 2;


后面的值什么意思?0,1,2
...全文
667 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
first ao 2012-03-06
  • 打赏
  • 举报
回复
说白了,就是在当前类里面的0,1,2都可以用UPDATA_CLIENT,GET_UNDATAINFO_ERROR,DOWN_ERROR
这三个字符串代替,就是给0,1,2起个名字方便使用,让人一眼就能够看明白这个状态是什么意思而已!当然你也可以不用,写个注释里标明0是什么状态等等
菖蒲老先生 2012-03-06
  • 打赏
  • 举报
回复
private static final int UPDATA_CLIENT = 0;
private static final int GET_UNDATAINFO_ERROR = 1;
private static final int DOWN_ERROR = 2;

还有一种意义在于整合代码,

以后想把UPDATA_CLIENT=3的时候,
只要在定义的时候改就可以了。

而不用再代码的各种角落里改。
Acesidonu 2012-03-06
  • 打赏
  • 举报
回复
常量的初始化值
菖蒲老先生 2012-03-06
  • 打赏
  • 举报
回复
因为你定义的变量不止有static还有final

final的话只能在定义时初始化值,或者在构造函数里设。

其他地方是不能重设它的值的。
五哥 2012-03-06
  • 打赏
  • 举报
回复
private static final int UPDATA_CLIENT = 0;

应该是定义一个常量 ,在类中统一使用 UPDATA_CLIENT来表示0 ,如果有多个地方使用0 ,就直接使用 UPDATA_CLIENT,在一些容易变的情况下 ,比如有时候需要改变 UPDATA_CLIENT的值 ,那么只需要修改定义部分就可以 ,而不需要整个类来修改;
zuxianghuang 2012-03-06
  • 打赏
  • 举报
回复
如果三个常量是表达某几种状态的话。我觉得用枚举比较好
greency 2012-03-06
  • 打赏
  • 举报
回复
一般在项目中 会用到做标识,状态等等的值,这些值往往是固定的 如:1,2,3这种数字 或者“login”"error" 这样的字符串 ,我们通常把他们定义成常量 ,这样既规范而且方便使用 (CI检查中就有检查到这些哦,至于访问修饰符,静态关键字,常量关键字 以及它们的作用就不一一说了 楼上有的说的就很right)
nmyangym 2012-03-06
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 qybao 的回复:]

定义三个int类型的常量, 常量名为UPDATA_CLIENT, GET_UNDATAINFO_ERROR, DOWN_ERROR ,它们的值分别为0,1,2,也就是说程序中使用到这些常量名的地方,可以把这些值代入到程序中去理解,
比如 int status = UPDATA_CLIENT; 就相当于 int status = 0;
[/Quote]
+1
qybao 2012-03-06
  • 打赏
  • 举报
回复
定义三个int类型的常量, 常量名为UPDATA_CLIENT, GET_UNDATAINFO_ERROR, DOWN_ERROR ,它们的值分别为0,1,2,也就是说程序中使用到这些常量名的地方,可以把这些值代入到程序中去理解,
比如 int status = UPDATA_CLIENT; 就相当于 int status = 0;
安特矮油 2012-03-06
  • 打赏
  • 举报
回复
private static final int UPDATA_CLIENT = 0;
private static final int GET_UNDATAINFO_ERROR = 1;
private static final int DOWN_ERROR = 2;
这样定义:
1.private那么表明了在通常情况下在只有在该类中才能使用这个变量
2.static表明是静态的,那么就符合static变量的规则
3.final表明该变量是不可变的,那就是常量的意思,而且该变量的初始化时间是在编译阶段
elva1176 2012-03-06
  • 打赏
  • 举报
回复
用0,1,2代表的是各种不同的状态,当遇到某某状态代表的值时而进行相应的操作
magong 2012-03-06
  • 打赏
  • 举报
回复
哦,很奇怪的是你的变量定义前加了private,所以你只能在本类中使用这些成员变量。
BadPattern 2012-03-06
  • 打赏
  • 举报
回复
静态常量被初始化为0,1,2
如果说具体什么含义,那要看使用的场景了,在这里,变量名不是已经表达出了一些含义么,一般这样的使用都类似于枚举,如表示了错误信息,状态信息等
zxciop1100 2012-03-06
  • 打赏
  • 举报
回复
这样定义的意思是什么? 举例说明 送分!
magong 2012-03-06
  • 打赏
  • 举报
回复
就是变量的初始值。
因为变量定义前加了final,所以以后这个变量不能有新的值,应用效果就像常量一样了。
因为变量定义前加了static,所以这个变量可以从类上去访问,如:
System.out.println(YourClass.UPDATA_CLIENT);
allIdover 2012-03-06
  • 打赏
  • 举报
回复
Color.red
Color.green
....
这就是意义啦
Guo_hong_jin 2012-03-06
  • 打赏
  • 举报
回复
static 静态访问修饰符
特点:常驻内存,属性和方法不需要进行类的实例化即可写入内存中,由于常驻内存的特性,访问静态属性或者方法时只需要通过类名.属性名或者方法名即可调用!

昨日凡阳 2012-03-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 magong 的回复:]

就是变量的初始值。
因为变量定义前加了final,所以以后这个变量不能有新的值,应用效果就像常量一样了。
因为变量定义前加了static,所以这个变量可以从类上去访问,如:
System.out.println(YourClass.UPDATA_CLIENT);
[/Quote]

这样定义,其实就是为了维护方便。如果要改,只要改这一个地方就可以。
  • 打赏
  • 举报
回复
直接用就行。不能改。
龙腾冰 2012-03-06
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 abstruct 的回复:]

private static final int UPDATA_CLIENT = 0;
private static final int GET_UNDATAINFO_ERROR = 1;
private static final int DOWN_ERROR = 2;
这样定义:
1.private那么表明了在通常情况下在只有在该类中才能使用这个变量
2.static表明是静态的,那……
[/Quote]
首先你要明白static定义的变量的含义,就是类变量,他和这个类生成的实例没有关系
加载更多回复(4)

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧