java中的符号常量怎么理解?为什么是使用固定的public static final修饰?

如题所述

final修饰的变量是常量,用final修饰的变量只能被赋值一次,赋值以后无法修改,所以称之为常量。变量被final 修饰以后能赋值的地方:一是其定义处,也就是说在final变量定义时直接给其赋值,
二是在构造函数中。而且在Java1.1以前,只能是在定义时给值。
三是在初如化代码块中{} 或者 static{}

用public static final修饰以后代表他成为一个静态的常量, 被static修饰以后的变量或代码块会在类加载时初始化, 而且只会初始化一次, 这也符合被final修饰的变量不能修改的原则。 而且可以直接通过类名.变量名访问, 而不需要new对象, 这样既方便又可以节省内存开销。 final还能修饰类 方法等 修饰方法或者类时 该方法或类不能被继承
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-01-19
你好,提问者:
看到你说符号常量,感觉不明白,查了一下
符号常量的定义: java中用关键字 final 来把一个标识符定义成常量
定义格式: final 类型名 标识符 = 值 ;
所以说 格式是固定的!
又因为 final成员变量表示常量,只能被赋值一次,赋值后值不再改变。
所以是 public static 的
因此成为你说的固定修饰了……
前面的是定义,后面的是我的理解,如果帮到你了,望采纳!
第2个回答  2018-08-02
作为常量,final是必须的
public 和 static 不是必须但常用的。
因为常量一般会集中在一个类内,由其它类调用所以是public
另外,常量所在的类是静态的,可以不实例化直接调用,比较方便,所以是static本回答被网友采纳
第3个回答  推荐于2017-09-22
作为常量,final是必须的
public 和 static 不是必须但常用的。
因为常量一般会集中在一个类内,由其它类调用所以是public
另外,常量所在的类是静态的,可以不实例化直接调用,比较方便,所以是static追问

常量所在的类是静态那么里面的常量就是静态的?

追答

如果是静态类,内部的常量和变量 都必须声明为静态的。

本回答被提问者采纳
相似回答