我正在尝试了解Java中的instanceof运算符,并遇到了一个非常奇怪的问题。
public static void main(String[] args) {
Map m = new HashMap();
System.out.println("m instanceof Date: " + (m instanceof Date));
}
如预期的那样,上述代码返回false。然而,
public static void main(String[] args) {
HashMap m = new HashMap();
System.out.println("m instanceof Date: " + (m instanceof Date));
}
这个甚至无法编译。我收到了一个错误。
inconvertible types
found : java.util.HashMap
required : java.util.Date
我在这里缺少什么? 我正在使用IntelliJ Idea 11。