Ch01-Java 之 基础
January 1, 2017
1.数据类型 #
基本类型 | 所占大小 (bit) | 最小范围 | 最大范围 | 包装类型 |
---|---|---|---|---|
boolean | 1 | Boolean | ||
byte | 8 | -128 | 127 | Byte |
char | 16 | 0 | 65535 | Char |
short | 16 | -32768 | 32767 | Short |
int | 32 | -2147483648 | 2147483647 | Integer |
float | 32 | 3.402823e+38 | 1.401298e-45 | Float |
long | 64 | -9223372036854774808 | 9223372036854774807 | Long |
double | 64 | 1.797693e+308 | 4.9000000e-324 | Double |
基本类型都有对应的包装类型,基本类型与其对应的包装类型之间的赋值使用自动装箱与拆箱完成。
2. 缓存池 #
new Integer(123) 与 Integer.valueOf(123) 的区别在于:
- new Integer(123) 每次都会新建一个对象
- Integer.valueOf(123) 会使用缓存池中的对象,多次调用会取得同一个对象的引用。
3. 访问权限修饰符 #
Java 的访问控制是停留在编译层的,也就是它不会在 .class 文件中留下任何的痕迹,只在编译的时候进行访问控制的检查。其实,通过反射的手段,是可以访问任何包下任何类中的成员。
修饰符 | 同一个类 | 同一个包 | 子类 | 任何地方 |
---|---|---|---|---|
public | yes | yes | yes | yes |
protected | yes | yes | yes | |
default | yes | yes | ||
private | yes |