scala 中的构造器

/**

* ‍‍1)主构造器直接跟在类名后面。‍‍

* 2)主构造器执行的时候,会执行类中所有的语句。

‍‍ * 3)如果主构造器参数不加val或者var,为private‍‍‍‍‍‍

*/

class Point(val x: Int, val y: Int) {

  private var _env1: String = _

var t = x;// val变量不可更改,但赋给var后就可以更改

var t1 = y;

  def aaa(): String ={

    println("aaaa")

    "qqq"

  }

  _env1 = aaa()

  println("wo ai lly")

// var 自动生成get、set方法

// val 只生成get方法

val isOriginal: Boolean = {

  x == 0 && y == 0

}

//  1)从构造器定义在类内部,方法名为this

  //  2)从构造器必须先调用已经存在的构造器

def this(xArg: Int) {// 从构造器

  this(xArg, 12344)//必须调用默认的构造器

  println("hello, I'm this constructor")

}

}

object Point {// 把static的东西,写到object中去

  def main(args: Array[String]) {

    val p1 = new Point(123)//我们上面写了2个构造器

    println(p1.x)

    //val p2 = new Point(555, 777)

    //println(p2.x)

  }

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容