19_函式和方法的區別
阿新 • • 發佈:2021-10-17
函式和方法的區別 :
* 廣義上 函式和方法沒有區別
* 狹義上 類中的函式稱之為方法
* 注意 : 方法中可以定義函式,函式中也可以定義函式
* 當 函式和方法重名時 用物件名稱.方法名稱 呼叫
* 區別
* 函式沒有過載(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方法(有引數)") }