java中的常量定义 final 的问题解决方法

番茄系统家园 · 2022-11-03 02:28:21

Java 中我们常常需要定义一些常量ID,ID值为连续不重复值

方法1:, 方便的定义,方便增减ID 非常方便, 程序保证不会有重复的ID

public static class HandleMessage{

// 常量这样定义, switch 语句过不去

final static int HM_USER = 0x100;

private static int _id = 1;

public final static int HM_INIT_ERROR = HM_USER + ++_id;

public final static int HM_INIT_COMPLETE = HM_USER + ++_id;

方法2, 定义较死板,增减ID 需要注意,是否有重复的ID,由定义者来保证,多人开发时这个很难保证,

public static class HandleMessage{

final static int HM_USER = 0x100;

public final static int HM_INIT_ERROR = HM_USER + 1;

public final static int HM_INIT_COMPLETE = HM_USER + 2;


 

代码中,

switch(id){

case HandleMessage.HM_INIT_ERROR:

//方法1 无法编译提示错误, case expressions must be constant expressions

//方法2 正常

break;

}

免责声明: 凡标注转载/编译字样内容并非本站原创,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如果你觉得本文好,欢迎推荐给朋友阅读;本文链接: https://m.nndssk.com/dngz/752849WkiRT.html
猜你喜欢
最新应用
热门应用