关于创建对象问题



栈区存引用和基本类型,不能存对象,而堆区存对象。==是比较地址,equals()比较对象内容。

Integer intege=new Integer(100);

Integer intege1=new Integer(100);

System.out.println(intege.hashCode()+"****"+intege1.hashCode()+"****"+

(intege==intege1)+"#####"+intege.equals(intege1));

100****100****false#####true

创建了两个地址不一样内容一样的对象

String str=“123”;

String str1=“123”;

引用的常量区的字符串数组地址一样

String str2=new String(“123”);

String str3=new String(“123”);

先在常量区创建数组然后在堆区创建对象