对象内存分布
-
对于java八大基本类型而言
局部变量和值都存于栈中
-
对于Java引用类型而言
局部变量存于栈中,而值存于堆中,直接输出局部变量会输出其对象的值。
-
若引用类型未写equals方法,则会调用父类Obeject中的equals方法,比较的是地址值。
-
若创建的是相同的字面量,则会地址复用。除非字面量不同或者是new出来的对象。
String s=new String("3"); String s2="3"; System.out.println(s ==s2);