Scala学习笔记(二):类和对象

object

object 是只有一个实例的类。它的定义与Java中的class类似,如:

// 单例对象
object AppEntry {
    def main(args: Array[String]): Unit = {
      print("Hello World!")
    }
}

其中有main方法,它与脚本运行方式不同,需要先编译(scalac),后运行,与java类似:

App

运行object,除了使用main方法,还可以直接继承trait(类似于Java中的接口)--App:

object AppEntry1 extends App {
  print("Hello World, by extends App!")
}

伴生对象

与类同名的对象称为伴生对象。相反,该类是对象的伴生类。伴生类或对象可以访问其伴随的私有成员。将伴生对象用于方法和值,这些方法和值不是特定于伴生类的实例。

import scala.math._

case class Circle(radius: Double) {

  import Circle._

  def area: Double = calculateArea(radius)
}

object Circle extends App {
  private def calculateArea(radius: Double): Double = Pi * pow(radius, 2.0)

  val circle1 = new Circle(5.0)
  print(circle1.area)
}

猜你喜欢

转载自www.cnblogs.com/yw0219/p/10067697.html