在一个Java类中,定义了一个`final`类型的实例变量`a`和一个静态常量`B`。同时,在构造函数中尝试对`a`进行赋值,并在静态初始化块中对`B`进行赋值。若在另一个方法中试图改变变量`a`和`B`的值,以下哪个描述符合Java语言规范?

答案解析

`final`修饰的实例变量`a`必须在声明时或在构造方法中初始化,且只能初始化一次,后续不能被修改。静态常量`B`必须在声明时或在静态代码块中初始化,且只能初始化一次,后续也不能被修改。静态变量不能通过对象调用,因此无法在普通成员方法中被修改。选项A准确描述了`final`变量的特性和静态常量的特性。选项B,C,D均存在错误理解,比如`final`变量只能赋值一次,静态常量也不能在任何其他地方被修改。
正确答案:A
随机推荐
开始刷题