乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      3000門徒第2課:Scala面向?qū)ο髲氐拙癝park源碼閱讀

       看風(fēng)景D人 2019-02-24

      Scala面向?qū)ο髲氐拙癝park源碼閱讀

      不用寫public class中的public

      class Person {
           private var myName = "flink"
           def name = this.myName
           def name_=(newName:String){ //重載?
        myName = newName
           println("Hi " + this.myName)
           }
      }
      
      class Person {
           private var myName = "flink"
           def name = this.myName
           def update(newName : String){
        myName = newName
           println("Hi " + this.myName)
           }
      }

      重要:private[this]
      //對(duì)象私有,不能被其他對(duì)象訪問

      class Person {
           private var myName = "flink"
           def name = this.myName
           def update(newName : String){
        myName = newName
           println("Hi " + this.myName)
           }
        def talk(p:Person) = {
        println("Hello "+ p.name)
        }
      }
      
      scala> val p1 = new Person
      p1: Person = Person@13cd7ea5
      
      scala> val p2 = new Person
      p2: Person = Person@c4c0b41
      
      scala> p2.update("Spark")
      Hi Spark
      
      scala> p1.talk(p2)
      Hello Spark
      
      scala> p2.talk(p1)
      Hello flink
      class Person {
           private[this] var Name = "flink"
      
           def update(newName : String){
           println("Hi ")
           }
        def talk(p:Person) = {
        println("Hello "+ p.name)
        }
      }
      <console>:14: error: value name is not a member of Person
             println("Hello! " + p.name)
                                   ^
      //不能被其他對(duì)象訪問。

      //重載構(gòu)造器
      //默認(rèn)構(gòu)造器在類定義內(nèi),任何非def的都將執(zhí)行

      class Person {
          var name = "flink"
          var age = 10
      
           def update(newName : String){
           println("Hi ")
           }
       def this(name: String){
       this()//必須調(diào)用一個(gè)其他構(gòu)造器
       this.name = name
       }
       def this(name: String, age:Int){
       this(name)//必須調(diào)用一個(gè)其他構(gòu)造器
       this.age = age
       }
      }
      //Scala 的內(nèi)部類的不同內(nèi)部類為不同類型

      object
      定義類后同時(shí)定義object存放靜態(tài)成員和方法,為伴生對(duì)象,它的構(gòu)造器不接受參數(shù),只在第一次調(diào)用執(zhí)行一次

      object Person {
      var salary = 0.0
      println("Scala")
      def getSalary = salary
      }

      apply是當(dāng)前類的對(duì)象的工廠方法

      程序入口在object內(nèi)的main方法def main(argStrings:Array[String]) {}

      抽象類

      重寫父類要加override,重寫父類的抽象方法必須加override關(guān)鍵字

      抽象屬性,不給值,需要覆蓋

      trait?接口?

      DAGScheduler 是一個(gè)至關(guān)重要的類

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多