`
yidongkaifa
  • 浏览: 4064488 次
文章分类
社区版块
存档分类
最新评论

java 中的常量定义,final 的问题

 
阅读更多

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;

}


分享到:
评论

相关推荐

    JavaConstants:测试Java中常量的各种定义和使用方法

    Java常量接口反模式 这篇文章最初发布在我的博客上: : 您如何在Java中定义和使用常量? Internet上的大多数建议具有以下意见: 为类中的常量声明public static final 不要将接口用于常量 定义常量的最常见方法...

    议Java语言中常量定义的注意事项.pdf

    java是一种跨平台的面向对象的程序设计语言。在java的学习过程中会遇到很多的难点,比如在程序中正确定义常量时应注意那些事项,Final与static关键字如何使用,本文就此进行了探讨。

    Java常量的定义

     由于java interface中声明的字段在编译时会自动加上static final的修饰符,即声明为常量。  public interface Constants{  String name = 111;  }  public class read{  public static void main...

    Java学习笔记---15.面向对象编程10-Java中final关键字,抽象类与接口

    在Java中, 可以使用final关键字修饰类、方法以及成员变量。 (1).final标记的类不能被继承; (2).final标记的方法不能被子类复写; (3).final标记的变量即成为常量,只能被赋值一次. 注意: 如果使用final来...

    Java终极面试题(2010整理版)

    Java终极面试题(2010整理版) Java基础方面 线程编程方面 。。。。。。。

    java核心知识点整理

    注意:常量定义于main方法的外边,而且必须有关键字 static final; 6.字符串的子串: String str = hello”“; String str1 = str.substring(0,4); //输出hell 7.不要用==运算符来测试两个字符串是否相等,该...

    Java中抽象类和接口的区别与作用详解

    abstract class,只可以包含抽象方法,也包括一些常量的定义,丝毫不带半点实现细节,它只提供接口,可以有数据成员,默认是、同时也必须是static & final型,可以通过Interface name直接访问。Interface可以实现...

    有关Java中关键字final的理解

    通常,这类常量数据都是基本类型的数据,并赋予关键字final,同时在对此常量定义时需要进行赋值。  值得注意的是:对于基本类型,使用final关键字将使数值恒定不变;而对于对象引用,final则是使引用恒定不变。...

    Java基础 接口.pdf

    Java接口概念 Java编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。... // 一些常量定义 // 一些抽象方法签名 } 其中,public 表示该接口对外可见,接口名采用驼峰式命名

    第01章-Java语言概述-2010-2011(2)

    类: 最重要、最基本的语法,类的定义与继承与 C++类似,主要区别: Java不允许多重继承...带final的类不能用作父类被继承, 带final的属性在定义式必须赋初值并称为常量,带final的方法将 禁止子类(Overriding)。

    Java中接口的定义与实现

    接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法定义两部分组成。定义接口的基本格式如下:  [修饰符] interface 接口名 [extends 父接口名列表]{  [public] [static] [final]...

    Java中final变量使用总结

    主要介绍了Java中final变量使用总结,final关键字可用于变量声明,一旦该变量被设定,就不可以再改变该变量的值,通常final定义的变量为常量,需要的朋友可以参考下

    JAVA核心知识点整理.rar

    注意:常量定义于main方法的外边,而且必须有关键字 static final; 6.字符串的子串: String str = hello”“; String str1 = str.substring(0,4); //输出hell 7.不要用==运算符来测试两个字符串是否相等,该...

    Java堆、栈和常量池

    对于字符串:其对象的引用都是存储在栈中的,如果是编译期已经创建好(直接用双引号定义的)的就存储在常量池中,如果是运行期(new出来的)才能确定的就存储在堆中.对于equals相等的字符串,在常量池中永远只有一份,在堆...

    Java经典面试题.pdf

    方法重写是指子类重新定义父类的方法,而方法重载是指在同一个类中定义多个同名但参数列表不同的方法。 3.什么是Java的静态关键字? 静态关键字用于修饰类的成员(方法、变量、代码块),使其在类加载时被初始化,...

    JAVA复习资料

    17、如果一个Java源程序文件中定义有4个类,则使用Sun公司的JDK编译器javac编译该源程序文件将产生 4 个文件名与类名相同而扩展名为 class 的字节码文件。 18、开发与运行Java程序需要经过的三个主要步骤为 编辑...

    《Java程序设计案例教程》教学课件02Java语言基础.pptx

    2.2 变量和常量 2.2.2 关键字 关键字是Java语言中已被赋予特定含义的标识符,只能供Java编译系统使用。Java语言中不允许用户对关键字再赋予其他含义。Java语言中的关键字见表2-1。 表2-1 Java语言中的关键字 另外,...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    在 java 语言中,Java 程序的基本单位是类,也就是说:一个 Java 程序是由多个类组成 的。定义一个类与定义一个数据类型是有区别的。在程序设计语言中,把定义数据类型的能 力作为一种很重要的能力来对待。在面向...

    最全java考试简答题

    final`: `final` 也是 Java 中的一个关键字,它表示一个变量或方法一旦被赋值或定义后,就不 可再次修改。在编程中,`final` 通常用于声明常量,以确保在程序运行期间不会被修改,从 而提高代码的可读性和可维护性。...

    java基础入门教程

    香 港 则 在 今 年 4月 就 举 行 了 全 岛 的 Java杯 比 赛 ,在 计 算 机界掀 起 了 学 习 Java的热 潮 (尤 其 是 在 大 学 生 们 中 ,出 现 了 一 批 Java迷 )。 有 人 预 言 :Java将 是 网 络 上 的 "世 界 语 ...

Global site tag (gtag.js) - Google Analytics