##字符串创建对象方式有两种:直接赋值,new构造方法。
例如:String name="tom";
String address=new String("woo");
区别是直接赋值:对象存入常量池中;当JVM创建字符串对象前会先去常量池中找有没有一个字符串内容与当前字符串相同,有:将已有的地址赋值给变量;无,创建新的对象.
##解释 "== "当两边是基本数据类型比较时,比较的是里面存储的值,当两边是对象变量比较时,比较的是对象变量存储的地址。
###堆里面存储对象的属性和方法,也包括变量池。
###栈里面存储基本类型的变量和对象的地址。
如/*String name="tom";//字符串
String name2="tom";//字符串
System.out.println(name==name2);//她们指的是同一个地址。(==)若存储的变量相同返回ture,否则返回false。
##new :直接存入堆内存;每new一次就会创建一个新的对象
如:String address=new String("河南郑州高新区");
String address2=new String("河南郑州高新区");/*创建了两个地址,虽然这地址里存储的变量是一样的,但(==)比较的是他们的地址是否相同。*/