1. 程式人生 > >雲星資料---Scala實戰系列(精品版)】:Scala入門教程034-Scala實戰原始碼-Scala apply方法02 初始化物件

雲星資料---Scala實戰系列(精品版)】:Scala入門教程034-Scala實戰原始碼-Scala apply方法02 初始化物件

Scala 呼叫apply() 初始化物件

package scala_learn.demo08_Apply

/**
 * Created by liguohua on 2017/3/1.
 */
class O3_ApplyDemo {

}

object O3_ApplyDemo {
  def main(args: Array[String]) {
    //建立物件的方式一
    val pig1 = new Pig
    println(pig1)
    pig1() //instance apply()
    //建立物件的方式二(需要在物件中定義apply()方法)
    val pig2 = Pig.apply()//object apply()
pig2() //instance apply() //建立物件的方式三(需要在物件中定義apply()方法)(推薦) val pig3 = Pig()//object apply() pig3() //instance apply() //獲得物件的方式四 val pig4 = Pig//val pig4=object pig4() //object apply() } } class Pig { def apply() = { println("instance apply()") } } object Pig { //object中apply()方法一般去建立一個物件
def apply() ={ println("object apply()") new Pig } }