类与对象
成员变量
特点
- 域变量
- 类体中
- 默认值
- 先写属性再写行为
- 对成员变量的操作只能放在方法中
分类
- 实例变量
- 类变量(static)
局部变量
- 方法体中
- 没有默认值
- 同名优先,调用成员变量用this
-
- this - 构造 - 调用成员变量 - 调用其他构造方法 this() - 实例 - 调用成员变量 - 静态方法不能和this一起
构造方法
- 同类名
- 无返值
- 参数不同
创建对象
-
new
-
为每个成员变量分配内存空间
-
计算出引用
- 存放在栈
-
分配给对象的变量(对象的实体)
- 堆
-
-
执行构造方法中的语句
-
结论
- 一个类声明的两个对象如果具有相同的引用,两者就具有完全相同的变量(实体)。
- 垃圾收集:周期地检测某个实体是否已不再被任何对象所拥有。
- 当参数是引用类型时,传值传的是变量中存放的引用。
可变参数
- 参数代表必须是参数列表中的最后一个
- 参数代表可以通过下标运算来表示参数列表中的具体参数
- x.length
-
for(int param:x){ sum = sum + param; }
实例方法和类方法
-
加载到内存,类方法分配入口地址
- 不能调用实例方法,不能操作实例对象
-
创建对象,实例方法分配入口地址