2.基本概念和认识
2.1 Java引用
Java中一切皆是对象,一切对象实例的标识符号(对象名称)都只是对象的引用。
2.2 对象的创建
- 通过new关键字创建,但是要注意基础类型和String类型的特殊之处并且还有常量池的概念。
- 放在哪里:
- 寄存器:位于CPU内部,这是存取最快的区域,但是Java并不能直接控制,程序运行过程中也并不能感知到这一块的分配和操作情况;
- 堆栈:位于RAM,存放基础类型变量数据和对象、数组的引用,但是对象本身并不在堆栈中,而是在堆中或常量池中;
- 堆:位于RAM,存放new出来的对象;
- 静态存储:位于RAM,存放static变量;
- 常量存储:可以放在ROM,存放public final static变量;
- 非RAM存储:硬盘等永久存储空间,存放持久化对象。
基本类型 | 大小 | 最小值 | 最大值 | 包装类 |
boolean | - | - | - | Boolean |
char | 16bit | unicode 0 | unicode 216 - 1 | Character |
byte | 8bit | -128 | +127 | Byte |
short | 16bit | -215 | +215 - 1 | Short |
int | 32bit | -231 | +231 - 1 | Integer |
long | 64bit | -263 | +263 - 1 | Long |
float | 32bit | IEEE754 | IEEE754 | Float |
double | 64bit | IEEE754 | IEEE754 | Double |
void | - | - | - | Void |
5.数组:创建数组就等于创建了一个引用数组,数组里保存每个元素对象的引用。
2.3 GC
不需要程序员主动释放内存。
2.4 类
- class关键字。
- 默认值:类中基本类型的成员变量,如果没有初始化,他们将被初始化为0(泛),但是局部变量未初始化却会在编译阶段报错。
2.5 方法参数返回值
ReturnType methodName(/* Argument list */) {
/* Method body */
}
2.6 Java程序
- 包命名规范:域名反转,解决冲突;
- import关键字:告诉编译器将要引用的类的位置;
- static关键字:方法、成员变量、域