1.作为语句时,++a与a++并无区别,但作为表达式时有区别。
2.Java源文件中有且仅有一个public类,且必须与源文件名相同,其他类不限个数。
3.string[] args是命令行参数,(控制台)相当于字符串数组,这是Java的表达习惯,等价于string[args]。
4.eclipse自动编译,检查语法错误,如果提示没有语法错误,一般是运行错误。(error)
5.原码:数字本身的二进制表现形式,最高位为符号位,正数和0为0,负数为1。
6.(负数)反码:出符号位外,各二进制位按位取反。
7.(负数)补码:补码=反码+1,数字在计算机的存储形式是补码。
8.正数的原码,反码,补码相同。
9.只有负数二进制右移时,高位补1,其余情况均补0。(-5<<3)
10.&,|,~(二进制按位取反),^四种位运算,符号位也要参与进来。
11.之所以引入反码和补码是一是为了避免编码出现二义性,例如0有-0(10000000),+0(00000000),而两者等价,二是为了结果的准确性,例如-5+5,如果原码计算结果就不为0,而补码却能得到正确结果。(真心佩服发明编码奥秘的数学天才们)
12.&&只要第一个条件不满足,后面条件就不再判断(不编译);(多义符)&(用在表达式中)会将整个表达式进行判断。
13.||只要满足第一个条件,后面条件就不再判断(不编译);|将整个表达式进行判断。