设为首页 加入收藏

TOP

Scala Class etc.(二)
2019-09-30 16:47:29 】 浏览:296
Tags:Scala Class etc.
sInstanceOf, isInstanceOf,判断相等,hash值等方法
  • AnyRef 是除基础类型外所有类的父类,等价于 java.lang.Object
    • 提供方法 wait, notify/notifyAllsynchronized
  • AnyVal 不包含任何方法,只是个值类型的标记
  • 所有 Scala 类都实现了 ScalaObject 这个标记接口,该接口无任何方法
  • Null 的唯一实例 null,可分配给引用类型,但不可分配给值类型(Int 不可为 null)
  • Nothing 无实例,在泛型构造时有用,Nil 类型为 List[Nothing]
  • ??? 方法声明返回类型为 Nothing, 无返回值,会抛出 NotImplementedError,用于预留未实现的方法
  • Unit 代表空/void,类型唯一值为 ()
  • 如果方法参数类型为 AnyAnyRef, 当传递多个参数时,会被替换为 tuple
  • equalshashCode 判断对象相等
    • 可使用模式匹配实现 equals
    • equals 参数类型为 Any 而不是具体的类型
    • ##hashCode 的安全版本,遇到 null 会返回 0 而不是抛出异常
  • 值类 Value Class
    • 继承 AnyVal
    • 主构造器只有一个参数 val,无构造体
    • 无其他构造器和字段
    • 自动提供的 equalshashCode 比较实际值
    • 用于隐式转换
      • 其他用途,如 class a(x: Int, y: Int) 设计为 class a(x: X, y: Y) ,定义值类 X, Y 避免混淆参数
  • 首页 上一页 1 2 下一页 尾页 2/2/2
    】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
    上一篇Scala Basis 下一篇实时计算数据架构的演变

    最新文章

    热门文章

    Hot 文章

    Python

    C 语言

    C++基础

    大数据基础

    linux编程基础

    C/C++面试题目