1.非静态属性或方法内存分析
举一个简单的例子。
创建一个Pet类
public class Pet {
public String name;
public int age;
public Pet() {}
public void shut() {
System.out.println("咆哮");
}
}
在Test类中在主方法来把Pet()这个类实例化
public class Test {
public static void main(String[] args) {
//创建一个dog对象
Pet dog=new Pet();
dog.name="旺财";
dog.age=3;
dog.shut();
//创建一个cat对象
Pet cat = new Pet();
cat.name="老吴";
}
}
解析:
(1) Pet dog=new Pet();
(2) dog.name="旺财";
(3) dog.age=3;
(4) dog.shut();
(5) Pet cat = new Pet();
(6) cat.name="老吴";
2.静态属性或方法内存分析
static属性: 属性被所有对象共享; 这个属性先于对象存在的
static 方法:这个方法先于对象存在
如学生类,姓名、年龄、身高等属性为每个学生独自拥有的,但是学生数量num则为一个班级里的所有学生所共有的。静态属性或方法既可以通过具体的实例访问和修改,也可以通过类名.静态属性|静态方法来进行访问或修改。