阅读背景:

Scala 系列(八)—— 类和对象

来源:互联网 

一、初识类和对象

Scala 的类与 Java 的类具有非常多的相似性,示例以下:

// 1. 在 scala 中,类不须要用 public 声明,所有的类都具有公共的可见性
class Person {

  // 2. 声明私有变量,用 var 润饰的变量默许具有 getter/setter 属性
  private var age = 0

  // 3.如果声明的变量不须要进行初始赋值,此时 Scala 就没法进行类型推断,所以须要显式指明类型
  private var name: String = _


  // 4. 定义方法,应指明传参类型。返回值类型不是必需的,Scala 可以主动推断出来,但是为了便利调用者,建议指明
  def growUp(step: Int): Unit = {
    age += step
  }

  // 5.对改值器方法 (即转变对象状况的方法),即便不须要传入参数,也建议在声明中包括 ()
  def growUpFix(): Unit = {
    age += 10
  }

  // 6.对取值器方法 (即不会转变对象状况的方法),没必要在声明中包括 ()
  def currentAge: Int = {
    age
  }

  /**
   * 7.不建议应用 return 症结字,默许方法中最后一行代码的盘算成果为返回值
   *   如果方法很简短,乃至可以写在同一行中
   */
  def getName: String = name

}


// 伴生对象
object Person {

  def main(args: Array[String]): Unit = {
    // 8.创立类的实例
    val counter = new Person()
    // 9.用 var 润饰的变量默许具有 getter/setter 属性,可以直接对其进行赋值
    counter.age = 12
    counter.growUp(8)
    counter.growUpFix()
    // 10.用 var 润饰的变量默许具有 getter/setter 属性,可以直接对其进行取值,输出: 30
    println(counter.age)
    // 输出: 30
    println(counter.currentAge)
    // 输出: null
    println(counter.getName)
  }

}// 1. 在 



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: