JAVA常量定义时就要初始化吗?

如题所述

不一定哦,可以进行初始化,这时可以给常量一个定值,也可以不初始化,在程序运行时,把值赋给常量,具体细节如下:


1.用final关键字修饰的常量:例如
class A
{
final int i;//或者final int i=10;
public A()
{
i=10;
}
}


2.用static和final关键字同时修饰的常量就必须得再定义时初始化,例如:
class A
{
static final int i=10;
}


我举得例子你可以去试着编译一下,都是正确的。
其实可以从关键字的含义来理解是否得一定义就初始化:常量都是用final来修饰的,所以只要在包含它类实例化对象的时候初始化就行了,什么都不影响。但是如果前面加个static表明类装载时这个常量必须是有个状态的(被赋予了值,初始化了),所以如果用static就必须定义时初始化。

温馨提示:内容为网友见解,仅供参考
无其他回答

JAVA常量定义时就要初始化吗?
不一定哦,可以进行初始化,这时可以给常量一个定值,也可以不初始化,在程序运行时,把值赋给常量,具体细节如下:1.用final关键字修饰的常量:例如 class A{final int i;\/\/或者final int i=10;public A(){i=10;}} 2.用static和final关键字同时修饰的常量就必须得再定义时初始化,例如:class...

如何正确定义常量?JAVA
定义常量,java规范: 常量所有字母大写,单词与单词之间用下划线分开。常量必须在定义的时候就初始化。例如: private final int MY_VALUES = 88888;

Java字符常量?
定义常量,java规范:常量所有字母大写,单词与单词之间用下划线分开。常量必须在定义的时候就初始化。java字符常量无效,怎么办\/\/如果charAt不为数字,报错被catch到了。这里弹出提示.当然,最好在得到arrayStr后马上检查下arrayStr的长度为0,直接提示输入错误。你这貌似是传参进去的吧,传参的话那也是变量...

什么是常量?Java中,常量的定义规则有哪些?
一是常量在定义的时候,就需要对常量进行初始化。也就是说,必须要在常量声明时对其进行初始化。都跟局部变量或者成员变量不同。当在常量定义的时候初始化过后,在应用程序中就无法再次对这个常量进行赋值。如果强行赋值的话,数据库会跳出错误信息,并拒绝接受这一个新的值。(接口中定义的常量的访问方法) 二是final关键...

java接口的常量可以不指定初值吗
接口中的常量必须在定义的时候就指定初始值。接口中可以只有常量没有任何的方法,如下面的一个例子:public interface Constants { public static final double PI = 3.1415926;}

JAVA语言中,什么是变量,如何定义一个变量?什么是常量?
常量:常量是不可改变的量,一次赋值,永不改变 。常量定义:常量需要有final修饰符修饰。常量声明时必须初始化。常量标识符必须大写,且多个单词时用下滑线连接。注意:有时候常量也可以不用在声明时就初始化。eg:做局部变量 public class Test { public static void main(String[] args){ final int ...

java中的常量是什么?
常量有什么好疑惑的,就是定义一个不能被改变的量,比如圆周率π。常量被可能被全局引用,但是其值固定不变。

java属性常量没有默认值那属性加载时是怎么分配空间的,java 不是给属...
成员变量属于对象独有,每个对象创建时只会调用一次构造函数。成员变量可在定义时初始化,也可以在所有构造函数中初始化。你的a虽然定义时没初始化,但你在所有构造方法中初始化了。当类中有静态成员变量,普通成员变量,静态初始化块,非静态初始化块,局部变量和构造函数初始化动作时:①首先执行静态成员...

什么是常量
常量是指在整个操作过程中其值保持不变的数据,通常在命令或程序中直接给出其值。它们可以是不随时间变化的某些量和信息,也可以是表示某一数值的字符或字符串,常被用来标识、测量和比较。数值型常量用整数、小数、科学计数法表示,如1234、555.33、4.5E等;字符型常量是用半角的单引号、双引号或方...

Java常量与变量的区别!Java入门 Java必读!
变量的初始化有两种方式:声明时直接赋值,或先声明后赋值。多个同类型变量可以一起定义并初始化,用逗号分隔,以分号结束。在Java中,如果没有显式初始化,局部变量默认为0,而在方法中,必须明确初始化以避免运行时错误。对于需要大量网络请求的场景,如爬虫,推荐使用高效稳定的代理服务,如"代理云"。

相似回答