TIJ(Thinking in Java)作为Java学习书籍里的“圣经”,之前花两个月系统的捋了一遍,很多东西有种豁然开朗的感觉,入门之后读一遍TIJ,相信会有很多意外收获哦~
一:语法细节
1. Java中的命名规则:
package:统一使用小写字母
class:首字母大写,使用驼峰标识
method:首字母小写,使用驼峰标识
field:首字母小写,使用驼峰标识
static field:统一使用大写字母,并用下划线分割单词
2. import和import static
import com.xxx:常规导入某个包下的类
import static com.xxx:会导入某个包下的类的所有静态方法,这样之后再使用该类的静态方法时,可以直接使用方法名调用,而不必使用 类名.方法名 来调用静态方法
示例:
3. println和print
System.out.println:在下次打印时自动换行
System.out.print:在下次打印时不自动换行
4. Java访问权限修饰符
每个编译单元(即一个.java文件)都只能有一个public类,表示每一个编译单元都有一个单一的公共接口,用public类来展现。
5. final关键字
final 修饰的基本数据类型一旦初始化则数值恒定不变
final 修饰的对象引用表示:该引用一旦被初始化指向某个对象,就无法再将它改变为指向另一个对象(注意引用指向的对象自身是可以改变的)
final 修饰的类不允许被任何子类继承
final 修饰的方法将会被锁定,任何子类都无法修改它
声明为 final 的域可以在一开始不给定初值,但是编译器会确保该域在使用前必须初始化
由 static final 修饰的域将会占据一段不能改变的存储空间
二:基本数据类型
基本类型
大小
初始值
包装类
最小值
最大值
boolean
-
false
Boolean
-
-
char
16-bit
'\u0000'
Character
‘\u0000’
(0)
‘\uffff’
(65535)
byte
8-bit
0
Byte
-128
127
short
16-bit
0
Short
- 2^15
(负的2的15次方)
2^15 - 1
int
32-bit
0
Integer
- 2^31
2^31 - 1
float
32-bit
0.0f
Float
IEEE754
IEEE754
double
64-bit
0.0d
Double
IEEE754
IEEE754
long
64-bit
0L
Long
- 2^63
2^63 - 1
1. 创建基本数据类型不需要 new 操作符。
2. 当基本类型变量作为类的成员变量使用时,才会在初始化时被赋予初值;作为方法体中的局部变量时,则必须要被初始化才能使用。
3. 对象引用的默认初始值为null。
4. float / double 转换为整型时,总是对该数字执行截尾操作(四舍五入效果实现需要使用 java.lang.Math.round() 方法)。
5. 用于高精度计算的类:
BigInteger(支持任意大小的整数值)
BigDecimal(支持任意精度的定点数)
(定点数:指参与运算的数的小数点位置固定不变)
能作用于 int / float 的操作同样也能作用于 BigInteger / BigDecimal,只是 BigInteger / BigDecimal 需以方法调用的方式使用,而不是以运算符的形式来使用。
6. 基本类型之间比较是否相同可以直接使用“==”;