由于ClassTag
的>:>
方法已被弃用,并且TypeTag
不支持该操作,我如何检查运行时是否类型是另一个类型的父类(super class)型?
最佳答案
scala> def checkType[S: ru.TypeTag, T: ru.TypeTag] = ru.typeOf[T] <:< ru.typeOf[S]
| | checkType: [S, T](implicit evidence$1: reflect.runtime.universe.TypeTag[S], implicit evidence$2: reflect.runtime.universe.TypeTag[T])Boolean
scala> checkType[Any, String]
res0: Boolean = true
scala> checkType[Int, String]
res1: Boolean = false
关于scala - 使用 typetag 检查一个类型是否是另一个类型的父类(super class)型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19062224/