字符串也可以说是一个隐藏的对象。就下面两个代码进行比较
public class StringDemo{
public static void main(String args[]){
String str=null;
if(str.equals("hello")){
System.out.println("hello word");
}
}
}
上面代码执行的时候会报空指针异常。加入用的是str来接收输入的然后在判断的话就会报错。但是如果用如下代码就不会
public class StringDemo{
public static void main(String args[]){
String str=null;
if(“hello”.equals(str)){
System.out.println("hello word");
}
}
}
应为“hello”是一个隐藏匿名对象。匿名对象是由系统自动分配堆内存的