scala伴生类与伴生对象
1、先说单例对象。在scala是不允许有静态成员的。对此类使用场景,Scala提供了单例对象。单例对象的定义看上去跟定义类很像,只不过class关键字被换成了object关键字
这就是个单例
object Test {
var name1:String = "bigdata player"
println("+++++++++++++++++++++++++++++++")
def apply(name :String): Test = {
new Test(name)
}
def getname1(): String ={
name1
}
}
2、当单例对象跟某个类共用一个名字时,它被称为这个类的伴生对象。必须在同一个源码文件中定义类和类的伴生对象。同时,这个类又叫做这个单例对象的伴生类。类和他的伴生对象可以互相访问对方的私有成员
这就是伴生类和伴生对象了
class Test(name :String) {
println("===========================")
def getTest(): Unit = {
println(name)
println(Test.name1)
}
}
object Test {
var name1:String = "bigdata player"
println("+++++++++++++++++++++++++++++++")
def apply(name :String): Test = {
new Test(name)
}
def getname1(): String ={
name1
}
}
3、在调用这个伴生类和伴生对象时
4、测试输出