Scala REPL(2.13.8)中tab补全时(universal)注解含义问询
Scala REPL中
(universal)标注的含义 在Scala 2.13.8的REPL里,按tab补全查看方法时,标有(universal)的方法,指的是所有Scala对象(包括值类型和引用类型)都原生继承自Any trait的通用方法。
具体来说:
- 这类方法是Scala类型体系最顶层的通用方法,比如
hashCode()、equals()、toString(),不管你操作的是Int这种值类型,还是自定义类这种引用类型,这些方法都是对象原生就带的 - 而像
getClass()这类没有标注的方法,实际是继承自AnyRef(对应Java的Object),值类型实例调用它时会自动装箱成包装类,并非原生自带,所以不属于全对象通用的范畴,也就不会被标注(universal)
内容的提问来源于stack exchange,提问作者Benjamin Berman
相关产品推荐
相关产品推荐

