关于常量

在学习vuex时,定义mutation,   文档上说可以const 定义一个常量,那么  mutations就可以这么写


mutations:{     [常量名称](store,  param){}   }

这种写法是一般写法的替代,一般写法是:


mutations:{   'myMutation'(store  ,  param)  {}   }


那么意义在哪呢?多此一举的意义在哪呢    


网上其中一个说法是,  一个很大的项目,   多个组合作,   这个就很有用.   有用在于,    我们不必商量一个命名规范(驼峰式还是横线/下划线式)  ,  统一使用常量命名规范(  全部大写  )


缺点也很明显,   写更多的代码   ,  全大写的写法也不美观(个人认为)



总结:   项目不需要很多组共同开发  ,   一般不需要用常量这种方式


### Java 中关于常量的错误说法分析 在 Java 中,常量通过 `final` 关键字定义,具有不可变性。以下是对题目选项的详细分析: #### A. **常量的值被赋值后,在程序运行过程中不允许再改变** - 这一说法是正确的。`final` 修饰的变量一旦赋值,其值在程序运行期间不能被更改[^2]。 - 对于基本数据类型,`final` 确保了值的不可变性;对于引用类型,`final` 确保引用地址不可改变,但引用对象的内容可以改变。 #### B. **必须用 `final` 关键字修饰** - 这一说法是正确的。Java 中的常量需要使用 `final` 关键字修饰以确保其不可变性[^1]。 - 如果没有使用 `final`,变量就不是常量,可以在程序中重新赋值。 #### C. **Java 规范中常量名一般大写** - 这一说法是正确的。根据 Java 编码规范,`public static final` 修饰的常量名称应全部大写,单词之间用下划线分隔[^3]。 - 示例:`MAX_SIZE` 或 `PI_VALUE`。 #### D. **常量只允许被赋值一次** - 这一说法存在部分错误。虽然 `final` 修饰的变量只能被赋值一次,但对于非静态成员变量(实例变量),可以在构造方法中完成赋值[^2]。 - 如果是静态常量(`static final`),则必须在声明时或静态代码块中初始化[^4]。 因此,**D 选项的表述不够严谨**,忽略了构造方法赋值的情况。 --- ### 正确答案 **D** --- ### 示例代码 以下代码展示了 `final` 修饰变量的不同赋值方式: ```java class Example { private final int value; // 实例变量 public Example(int v) { this.value = v; // 在构造方法中赋值 } public static void main(String[] args) { final int number = 10; // 局部变量 // number = 20; // 编译错误,局部变量只能赋值一次 final StringBuilder sb = new StringBuilder("Hello"); sb.append(" World"); // 引用对象内容可以改变 System.out.println(sb); // 输出 "Hello World" } } ``` --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值