Scala>scala匿名内部类

匿名内部类

匿名内部类是没有名称的子类,直接用来创建实例对象。Spark的源代码中有大量使用到匿名内部类。
scala中的匿名内部类使用与Java一致。

定义 语法

val/var 变量名 = new/抽象类 {
    // 重写方法
}

示例说明

  • 1.创建一个Person抽象类,并添加一个sayHello抽象方法
  • 2.添加main方法,通过创建匿名内部类的方式来实现Person
  • 3.调用匿名内部类对象的sayHello方法

参考代码

abstract class Person7 {
  def sayHello:Unit
}

object Main7 {
  def main(args: Array[String]): Unit = {
    // 直接用new来创建一个匿名内部类对象
    val p1 = new Person7 {
      override def sayHello: Unit = println("我是一个匿名内部类")
    }
    p1.sayHello
  }
}
发布了166 篇原创文章 · 获赞 29 · 访问量 3514

猜你喜欢

转载自blog.csdn.net/qq_44509920/article/details/105350130