JAVA常量定义时就要初始化吗?
1个回答
展开全部
不一定哦,可以进行初始化,这时可以给常量一个定值,也可以不初始化,在程序运行时,把值赋给常量,具体细节如下:
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就必须定义时初始化。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询