isInstanceOf:检查某个对象是否属于某个给定的类。
asInstanceOf:将引用转换为子类的引用。
classOf:如果想测试p指向的是一个Employee对象但又不是其子类,可以用 if(p.getClas
s == classOf[Employee]),classOf方法定义在scala.Predef对象中,因此会被自动引入。如:
asInstanceOf:将引用转换为子类的引用。
classOf:如果想测试p指向的是一个Employee对象但又不是其子类,可以用 if(p.getClas
s == classOf[Employee]),classOf方法定义在scala.Predef对象中,因此会被自动引入。如:
- if(p.isInstanceOf[Employee]){
- val s = p.asInstanceOf[Employee]
- }
与Java相比:
Scala
Java
obj.isInstanceOf[Class]
obj instanceof Class
obj.asInstanceOf[Class]
(Class)obj
classOf[Class]
Class.class