String s="abc";
String ss=new String("abc");//"abc" 算一个对象,那这个对象是放在哪的?为何他算是对象,第1句“abc”不算?
Person p=new Person("tom");//Person(String s){this.name=s;}类,有个字段name;
区别在哪呢??
内存空间怎么分配的?
String ss=new String("abc");//"abc" 算一个对象,那这个对象是放在哪的?为何他算是对象,第1句“abc”不算?
Person p=new Person("tom");//Person(String s){this.name=s;}类,有个字段name;
区别在哪呢??
内存空间怎么分配的?
abc在堆里
ss代表的是一个对象的名称
abc才是实体
就像你是一个人 你的名字只是一个代词
而string ss = new("abc") 是在堆栈中一个对象 ss 它指向堆中的"abc"(就是跟s共享堆中的"abc")