1.String类是基本数据类型还是引用数据类型?为什么字符串的长度不可变?
String类是引用数据类型
字符串创建的时候在堆中已经开辟了一块空间,如果再创建同样的字符串的时候,其实那是引用已创建好的那个地址值
2.什么情况下会用到Static关键字?
静态修饰成员变量跟成员方法时,可以通过类进行调用
创建工具类的时候
3.静态代码块会在什么时候执行?
在调用类的时候,执行时优先于新建的对象
4.String s = new String("abc");这句代码创建了几个对象?分别在内存中的哪个区域创建?
String s = "abc";创建了几个对象,分别在内存中的哪个区域创建?
创建了两个对象,在堆中字符串常量池中创建了一个地址,在堆又新建了一个地址;
(跟上个问题接一起的情况)没有创建,双引号括起来的都在常量池当中已经有abc了,共享使用了 |