本帖最后由 张宏祚 于 2013-10-10 11:20 编辑
Java中,null是一个关键字,用来标识一个不确定的对象。因此可以将null赋给引用类型变量,但不可以将null赋给基本类型变量。但就null本身来说,它不是对象,也不知道什么类型,也不是java.lang.Object的实例。
可以做一个简单的例子:
//null是对象吗? 属于Object类型吗?
if (null instanceof java.lang.Object) {
System.out.println("null属于java.lang.Object类型");
} else {
System.out.println("null不属于java.lang.Object类型");
}
结果会输出:null不属于java.lang.Object类型
同理:
if (null instanceof java.lang.String) {
System.out.println("null属于java.lang.String类型");
} else {
System.out.println("null不属于java.lang.String类型");
}
结果是:null不属于java.lang.String类型
所以null既不是object,也不是String ,当重载的时候,参数是null而自动选择String,这个还需要进一步的交流!和楼主共同进步!
|