1、请判断下面程序的运行结果
public static void main(String[] args) {
for(int i = 0;i<3;i++) {
System.out.println(i);
}
System.out.println(i);
}
答案:编译时错误
解析:i是for循环中的局部变量,在循环外检测不到此变量
2、请判断下面程序运行时会出现什么类型的异常
public static void main(String[] args) {
String s = null;
s.concat(“abc”); //运行异常:java.lang.NullPointerException
}
答案:NullPointerException
解析:String的初始化问题和string的concat连接字符串的方法
涉及的知识点很多:
(1)、首先理解String abc=null;String abc="";String abc;三种写法有什么区别?
String abc=null:创建一个空字符串对象,即创建了对象,但里面什么也没有,所以不能调用String中的任何方法
String abc="":创建一个字符串为空的字符串对象。 即创建了对象,对象中有字符串,单字符串为空,与上边的区别是他一应为对象赋值;
String abc:声明一个字符串对象,