2017-06-10  本文已影响0人  博瑜

每个类都有主构造器,主构造器的参数直接放在类名后面

class student(val name:String, var age:Int, gender:String, var id :Int = 18) {

// name has get func, age has get and set func, gender: private[this], even companion object cannot access, age may ignore when new

}

无参数也是主构造器

class student {

}

或者

class student() {

}

classstudent {

vars="we"

defa() = {

}

s="hah"

println(s)

}

objectstudentextendsApp{

valt=newstudent

}

会println “hah" 所以整个class中都是构造器都会执行

class student {

var name = _

def this(name:String) = {

this()

this.name = name

}

}

辅助构造器第一行要调主构造器

scala中的object就是单例的,一个进程只有一个

伴生对象,在scala的类中,与类名相同的对象。类和伴生对象之间可以互相访问私有方法和属性,与类在同一个文件中。但是private[this]不能访问

object分三种 singleton, app object,companion。

trait 相当于 interface,java8中interface可以定义的时候实现 ctrl + i

上一篇下一篇

猜你喜欢

热点阅读