栈内存  对象地址

堆内存  存放属性

public class TestDemo{

     public static void main(String args[]){

         Person perA =new Person();    //出现new百分之百就是要申请堆内存

         perA.name="王强";       //perA 地址存放在栈内存中,同一块内存只能存在一个栈内存,一个栈内存对应一个堆内存,多余的堆内存会被视为垃圾交给GC回收

         perA.age=30;

         Person.perB=perA;      //引用传递   内存中将perB栈内存指向了perA的堆内存,同时修改了perA.name="王刚"

         perB.name="王刚";

         perB.tell();

}

}

class Person{

    String name;                      //堆内存

    int   age;

   public void tell (){

       System.out.sprintln("姓名:"+name+"年龄:"+age);

}

}