回覆列表
  • 1 # 使用者923317194837

    函式FunctionN: 理解為一個實體, 這個實體包裝了一個行為方式, 寫在了它的apply方法裡

    方法method: 理解為一種行為方式, 這個行為方式可以透過轉換包裝成一個FunctionN實體

    這其實是一道語文題

    阿不

    英語題

    scala文件裡如果出現"function"這個詞語, 是有2個意思的

    1. 有一個trait叫FunctionN (Function1,Function2等等) 他是一個型別,和你平時用的int,double等等是同一種東西,你如果是語言的設計者你把他改成VCZH1,VCZH2也無不妥

    2.在人類交流裡的function指一塊程式碼接收一批變數得到一個返回值, 這個不能隨便改名字叫, 不然大家無法交流了

    你列出的2個文件

    前一個說Function與method不同裡的Function是意思1的FunctionN, FunctionN作為例項本身是不可以執行的, scala裡能直接寫呼叫程式碼是因為他包裝了語法糖, 你寫f()實際上執行的是f.apply()

    後一個說A method is a function that ...裡的function是意思2的概念,是指method有意思2裡描述的功能,但他不是一個FunctionN例項, 但他在必要的時候可以透過eta-conversion賦值給函式FunctionN的例項

  • 中秋節和大豐收的關聯?
  • 山楂條是用那些材料做成的?