- //错误示例
- String _name,__name,$name,name_,name$;
为啥呢,因为这俩符号本身没啥意义。
另外其实$符号在js中应用是比较多的,_在Python中的应用是比较多的。不同的语言是有不同的理念的,但在Java中,这俩符号你写在前面或者后面是没啥意义的。
当然,当你定义常量的时候是可以用在中间的。
拓展:
数字键盘上的~是表示“位非”操作,运算符,啥意思呢,就是首先将当前变量转换成二进制,然后所有位取反 比如原本是1,位非操作后就变成0,原本是0,位非操作后就是1。
- int a=10;
- System.out.println(~a);
输出结果:
符号 | 描述 |
---|---|
~ | 运算符 为非运算,上面说了 |
! | 运算符 布尔类型的非 |
@ | 注解使用,这不用多说了 |
# | 在注释中 使用#+方法名,可以跳转到该方法 |
% | 取模运算 |
^ | 异或运算 相同为0,不同为1 |
& | 与运算符 有1为1,全0为0 |
* | 乘号 |
( | 左括号 |
) | 右括号号 |
= | 等于号 |
说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,纯拼音命名的方式更要避免采用。
- //正确示例 ali,alibaba,taobao,hangzhou;
-
- //错误示例 DaZhePromotion[打折], getPingFenName()[评分] String fw[福娃] int 数量=3
- //正确示例 日本人 印度人 非洲人 blockList allowList secondary
-
- //错误示例 RIBENGUIZI ASAN HEIGUI blackList whiteList slave
- //正例:ForceCode UserDO HtmlDTO XmlService TcpUdpDeal TaPromotion
-
- //反例:forcecode UserDo HTMLDto XMLService TCPUDPDeal TAPromotion
//正例:localValue getHttpMessage() inputUserId
- //正例:MAX_STOCK_COUNT CACHE_EXPIRED_TIME
-
- //反例:MAX_COUNT EXPIRED_TIME
拓展:
有些说法说抽象类也可以用Base开头,但我不建议这么做,因为有些包里面,Base开头的是基础类而不是抽象类,用Base容易混淆。
中场休息:
- //正例 String[] strArray = {};
-
- //反例 String dataArray[] = {};
啥意思的,我们来看一下代码,
我们新建一个Student类型,里面有一个boolean类型的isDeleted属性,当我们生成get()方法时,生成的是isDeleted();
- package com.alicodestandard.bean;
-
- /**
- * @ClassName Student
- * @Author wangshuo
- * @Date 15:16 2022/6/30
- * @Description TODO
- **/
- public class Student {
- private boolean isDeleted;
-
- public boolean isDeleted() {
- return isDeleted;
- }
-
- public void setDeleted(boolean deleted) {
- isDeleted = deleted;
- }
- }
如果将idDeleted属性换为deleted,生成get方法的时候,也会生成isDeleted();
- package com.alicodestandard.bean;
-
- /**
- * @ClassName Student
- * @Author wangshuo
- * @Date 15:16 2022/6/30
- * @Description TODO
- **/
- public class Student {
- private boolean deleted;
-
- public boolean isDeleted() {
- return deleted;
- }
-
- public void setDeleted(boolean deleted) {
- this.deleted = deleted;
- }
- }
所以当有些框架序列化时,发现isDeleted()的get方法,会误以为是有一个deleted属性,所以当你属性值为isDeleted时,会产生序列化问题。
- //反例:AbstractClass缩写为absClass(我™还以为是“防抱死类“嘞)
- // condition缩写为condi;function缩写为fu,此种随意缩写严重影响了代码的可阅读性