内容纲要
192讲(重要)类与对象、对象内存布局、属性、!对象内存分配机制
类与对象
- 类与对象
package main.daytwo;
public class Test {
public static void main(String[] args) {
Cat cat1 = new Cat();
cat1.catName = "小白";
cat1.age = 3;
cat1.catColor = "白色";
Cat cat2 = new Cat();
cat2.catName = "小花";
cat2.age = 199;
cat2.catColor = "花色";
System.out.println("小白这只猫:" + cat1.catName + " " + cat1.age + " " + cat1.catColor);
}
}
class Cat{
String catName;
int age;
String catColor;
}
对象在内存中的存在形式(重要)
对象在内存中的存在形式
重要!!!!!
cat.name 赋值的引用数据类型 会指向在堆中指向方法区的常量池, 而cat.age 赋值的基本数据类型会直接指向堆中的内存
属性 也叫 成员变量 也叫 字段(廖雪峰教程中称之为字段field)
属性
-
注意!!!
-
new Person() 创建的对象空间(包括其中的数据)才是真正的对象,小明不是对象,它叫对象引用(对象名)
重要!! 类与对象的内存分配机制!!!
重要!
注意对象名b = null; 会导致b 指向空,意味着b 不会指向对象,运行System.out.println(b.age);会出现异常。