今天终于看完了第一章,哈哈,万事开头难....刚开始被编程思想的第一章给蒙住了,讲一堆理论,没什么意思。从第二章开始,真正的开始讲解Java相关的内容,有了一定的开发经验后,再次阅读起来,感觉收获良多啊!
关于对象
与C这种面向过程的语言不同,Java是面向对象的,在它眼里一切都是对象。
在Java中不同的东西是存放在不同的地方的,比如:
- 通过new创建的对象,是存放在堆中的
- 方法区用于存储元信息和常量
- 本地方法栈存储了方法的调用链等信息

关于基本的数据类型
| 基本类型 | 大小 | 最小值 | 最大值 | 包装器 |
|---|---|---|---|---|
| boolean | - | - | - | Boolean |
| char | 2字节 | Unicode 0 | Unicode 2^16-1 | Character |
| byte | 1字节 | -128 | 127 | Byte |
| short | 2字节 | -2^15 | 2^15-1 | Short |
| int | 4字节 | -2^31 | -2^31-1 | Integer |
| long | 8字节 | -2^63 | 2^63-1 | Long |
| float | 4字节 | IEEE754 | IEEE754 | Float |
| double | 8字节 | IEEE754 | IEEE754 | Double |
| void | - | - | - | Void |
基本类型可以提升为包装器:
char c = 'a';
Character ch = new Character(c);
也可以降低为基本类型:
char ccc = ch;
作用域
在C、C++、Java中作用域都是通过{}控制。
但是在Java中是不可以重复声明的,比如:
{
int x = 1;
{
int x = 2;
}
}
而且对于new出来的对象作用域是不同的。通过new创建的对象,作用域之外,这个对象仍然存活,只能通过JVM进行销毁。
关于类
在Java中类可以包含一些基本的类型,在创建类的对象时,会自动进行初始化。
比如:
class Test{
int i;
float j;
}
初始化的规则如下:
| 基本类型 | 默认值 |
|---|---|
| boolean | false |
| char | null |
| byte | 0 |
| short | 0 |
| int | 0 |
| long | 0L |
| float | 0.0f |
| double | 0.0d |