函數和方法的區別 :
* 廣義上 函數和方法沒有區別
* 狹義上 類中的函數稱之為方法
* 注意 : 方法中可以定義函數,函數中也可以定義函數
* 當 函數和方法重名時 用對象名稱.方法名稱 調用
* 區別
* 函數沒有重載(overload)和重寫(overwrite)
* 方法可以進行重載(overload)和重寫(overwrite)
*
* 重載(overload)
* 在一個類里面,方法名稱相同,參數列表不同,返回值類型可以相同也可以不同,的方法我們稱之為 重載
* 重寫(overwrite)
* 子類繼承父類時,對父類方法的重新編寫,要求 方法名稱、參數列表、返回值類型 要和父類相同,方法內容重寫
*
* 省略原則
* 1. 對象調用方法是 .可以省略 對象名稱 方法名稱
* 2. 當方法參數只有一個或者沒有時,()可以省略
* 函數 : 為完成某一功能的程序語句的集合,稱之為函數*
* */
/** * @author gaocun * @create 2021-10-10 4:43 PM */ object 函數和方法的區別_02 { /* * 函數 : 為完成某一功能的程序語句的集合,稱之為函數 * 函數和方法的區別 : * 廣義上 函數和方法沒有區別 * 狹義上 類中的函數稱之為方法 * 注意 : 方法中可以定義函數,函數中也可以定義函數 * 當 函數和方法重名時 用對象名稱.方法名稱 調用 * 區別 * 函數沒有重載(overload)和重寫(overwrite) * 方法可以進行重載(overload)和重寫(overwrite) * * 重載(overload) * 在一個類里面,方法名稱相同,參數列表不同,返回值類型可以相同也可以不同,的方法我們稱之為 重載 * 重寫(overwrite) * 子類繼承父類時,對父類方法的重新編寫,要求 方法名稱、參數列表、返回值類型 要和父類相同,方法內容重寫 * * 省略原則 * 1. 對象調用方法是 .可以省略 對象名稱 方法名稱 * 2. 當方法參數只有一個或者沒有時,()可以省略 * * */ def main(args: Array[String]): Unit = { show 函數和方法的區別_02.show Fun() Fun(10) FunOne //FunTwo // 在main方法中 定義函數 def show = println("這是方法中的函數") // 函數的嵌套 def FunOne() = { FunTwo // 定義函數 只能在函數體內使用 def FunTwo() = println("這是FunTwo") } } //定義 方法 def show = println("這是類中的方法") //方法 重載 def Fun() = println("這是Fun方法(無參)") //方法 重載 def Fun(id: Int) = println("這是Fun方法(有參數)") }