# 程序注释

注释是程序的重要部分,有经验的工程师都会随手写一些详细的注释,经过一段时间,当你回看你的代码时会发现,这些注释是多么亲切。

Java中的注释有三种:

//这是单行注释。

/* hello
    world
*/

/**
@author 谢帅
@version v1.0
@param 方法的参数类型
@return 方法的返回类型
*/
1
2
3
4
5
6
7
8
9
10
11
12

# 标识符

Java中的标识符跟其他语言一样,由字母,数字,_,$组成,不能以数字开头,不能使用关键字,除此之外:

  1. 不要用数字后缀,命名尽量有意义。
  2. 其中$符号有特殊意义,尽量不要使用。

Java的版本变化:

  • 在1.4中增加了assert关键字
  • 在1.5中增加了enum
  • 在1.10中增加了var关键字
  • 从1.7开始增加了中文的支持,可以用中文定义变量,但是尽量不要使用

# 数据类型

datatype

Java中的数据类型分为基本数据类型与引用数据类型,基本数据类型是自动开辟内存,引用数据类型需要手动开辟内存。

# 基本数据类型

数据类型 位数
byte 8
short 16
int 32
long 64
float 32
double 64
char 16
boolean -

基本数据类型的选择经验:

  • 整数如果较小则使用int,如果涉及描述日期时间数字,文件,内存大小使用long。
  • 小数范围小的使用float,大的使用double。
  • 实现内容传递(I/O操作,网络编程),或者编码转换时使用byte。
  • 逻辑控制的使用boolean。
  • 处理中文用char。

Java的版本变化:

  • 在JDK1.4之前定义变量必须要赋值,到JDK1.5以后就不需要必须赋值。
  • 在JDK1.10以后,Java出现了动态语言支持,支持var关键字。

# 类型转换

这里主要说一下常量的类型转换,变量之间使用显式转换即可:

(要转换的类型)变量名称 (int)Num

常量之间:

待转换类型 目标类型 转换方法
int long 后缀L或l
int byte 如果没有超出-128~127,自动转换,超出使用显式转换
float double Java中浮点型默认是double,如果给一个浮点型赋值小数,可加后缀f或F

# 运算符优先级

优先级 运算符 结合性
1 ()、[]、{} 从左向右
2 !、+、-、~(取反)、++、-- 从右向左
3 *、/、% 从左向右
4 +、- 从左向右
5 «、»、>>>(无符号右移位) 从左向右
6 <、<=、>、>=、instanceof 从左向右
7 ==、!= 从左向右
8 & 从左向右
9 ^(异或) 从左向右
10 | 从左向右
11 && 从左向右
12 || 从左向右
13 ?: 从右向左
14 =、+=、-=、*=、/=、&=、|=、^=、~=、«=、»=、>>>= 从右向左

# 短路与或

在一个test.java文件中:

public class test{
    public static void main(String args[]){
        System.out.println("短路:");
        System.out.println(1 > 3 && 1 / 0 ==0);
        System.out.println("正常:");
        System.out.println(1 > 3 & 1 / 0 ==0);

        System.out.println("短路:");
        System.out.println(1 > 0 || 1 / 0 ==0);
        System.out.println("正常:");
        System.out.println(1 > 0 | 1 / 0 ==0);
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13

然后编译运行:

javac -encoding UTF-8 .\test.java java test