1.标识符
标识符由字母(Unicode字符集中的一小部分)、数字、下划线(_)和美元符号$组成,但标识符不能由数字开头,根据阿里命名规范,标识符最好不要由下划线和美元符号开头。
标识符不能是Java关键字和保留字(const、goto)。
虽然true、false、null不是Java语言中的关键字(true、false是布尔类型的字面常量,null是引用类型的字面常量,就好比 5 是int类型的字面常量一样),但也不能用在Java中作为关键字
标识符大小写敏感,abc和ABC不是同一个表示。
标识符长度在Java语言中不受限制,但在Java虚拟机规范中须在系统所支持的范围内(1–216-1即65535,此字符长度仅限于除null字符以外的ASCII字符)
标识符不能含有空格
标识符的首字符所对应的代码点必须使得Character类的isJavaIdentifierStart方法返回值为true,后续字符所对应的代码点(如果存在后续字符)必须使得Character类的isJavaIdentifierPart方法返回值为true。
2.好的命名习惯
包名:所有字母一律小写,包的前缀可以为任何小写的ASCII字符,但必须是顶级域名(com 、edu、 gov、 mil、 net、 org)
接口名、类名:每一个单词的首字母大写(大驼峰)eg:SetName
方法名、变量名:第一个首字母小写,后面每一个单词首字母大写(小驼峰)eg:setName()
常量名:每一个字母均大写,多个单词由下划线隔开 eg: MAX_VALUE
使用public class 方法名声明类时,文件名要与类名保持一致。
分隔符: 圆点(.)在声明引用包和类时,用来分割包,子包和类,也可为类、对象和其成员之间的分隔符,表示类或对象的指定成员。
Java程序中一句连续的字符串不能分开在两行书写,如果字符串太长,又为了方便阅读可以先将字符串分割成两个字符串,再使用(+)连接。
public class Test{
public static void main(String[ ] args){
System.out.println("我正在学
习Java");
}
}
更改如下:
public class Test{
public static void main(String[ ] args){
System.out.println("我正在学"+
"习Java");
}
}
Java程序代码的注释:
1.多行注释
/*
多行注释内容*/
2.文档注释
/*
*注释内容
*注释内容
*/
注:
/*
注释内容
/*嵌套注释内容*/ ----1
// 嵌套注释内容 ----2
*/
第二种嵌套注释可行
第一种嵌套注释内容不可行,不能在多行注释中嵌套多行注释。
Java的变量和常量
声明变量:
1.
数据类型 变量名1[,变量名2][,变量名3]…;
eg: int a,b,c;
a = 1,b = 2,c = 3;
2.
数据类型 变量名1=初始值1,变量名2=初始值2;
eg: int a = 1,b = 2,c = 3;
一般在声明变量的同时附上处值,一旦对未赋值的变量进行使用,编译时就会报错。
定义常量
final 数据类型 常量名称1 = 值1,常量名称2 = 值2;
eg: final double PI = 3.14;
实现两个变量数值交换,但不能借助第三个变量:
方法一:
public class SwitchNum{
public static void main(String[] args){
int a = 1;
int b =2;
System.out.println("交换前:a="+a+"、b="+b);
a = a^b;
b = a^b;
a = a^b;
System.out.println("交换后:a="+a+"、b="+b);
}
}
方法二
public class SwitchNum{
public static void main(String[] args){
int a = 1;
int b =2;
System.out.println("交换前:a="+a+"、b="+b);
a=a+b;
b=a-b;
a=a-b;
System.out.println("交换后:a="+a+"、b="+b);
}
}
出人意料的自增运算符:
分别对++i,和i++进行赋值操作,其结果如下:
public static void main(String[] args) {
int i=12;
int j;
j=++i;
System.out.println("++i对j赋值"+j);//13
i=++i;
System.out.println("++i对i赋值"+i);//13
i=i++;
System.out.println("i++对i赋值"+i);//12
j=i++;
System.out.println("i++对j赋值"+j);//12
}
按常理来说"i++对i赋值"后打印i的结果应该是13,为何此处会变成12呢?
实际上,在Java中,不管前置++还是后置++,都是先将变量的值加一,然后才继续进行运算的,他们真正的区别是:前置++是将变量的值加一,并使用增值后的变量进行运算;而后置++是首先将变量赋值给一个临时变量,接下来对变量的值加一,然后使用临时变量(原值)进行运算。