java3
我學習了java的方法,在c++中相當于函數
Java方法是面向對象編程中最核心的概念之一,它允許我們在程序中封裝一部分代碼,以便在需要時重復使用。
方法的聲明語法:
訪問修飾符 返回類型 方法名(參數列表) {
// 方法體
}
訪問修飾符:
public:公有的,任何地方都能訪問。
protected:受保護的,同一包內和子類可以訪問。
private:私有的,只有同一個類內部才能訪問。
(default):默認的訪問修飾符,只有在同一個包內才能訪問。
返回類型:
可以是任何Java基本數據類型(如int、double等)、引用類型(如String、List等),或者是void(表示沒有返回值)。
參數列表:
用于定義傳遞給方法的數據,可以有零個、一個或多個參數。
參數名稱和數量決定了方法的簽名(signature),常用于方法重載。
方法體:
方法內部執行的代碼塊。
可以包含變量聲明、表達式、控制結構(如if, for, while等)、方法調用等。
方法的執行與調用:
可以使用方法名來執行一個方法。
調用方法時,實際參數會被傳送給方法的形參(如果有的話)。
可以為方法指定一個調用者(caller),這個調用者在方法執行結束時接收返回值(如果方法有返回值的話)。
方法的重載(Overloading):
擁有相同的方法名,但參數列表不同的方法。
重載方法可以有不同的訪問修飾符和返回類型。
靜態方法(Static Methods):
可以通過類直接調用,不需要創建類的實例。
靜態方法不能直接訪問非靜態的成員變量和方法。
實例方法(Instance Methods):
必須通過類的實例來調用。
實例方法可以通過this關鍵字訪問當前對象的實例變量和方法。
遞歸方法:
一個方法調用它自己的方法。
用于解決遞歸問題,比如求階乘、遍歷樹結構等。
構造方法(Constructor):
用于初始化新創建對象的成員變量。
沒有返回類型,其名稱必須與類名相同。
可以重載,但不會有constructor方法重載(因為constructor沒有返回類型)。
方法的重寫(Overriding):
在子類中重新定義一個與父類方法有相同名稱、返回類型、參數列表和拋出異常的方法。
重寫的方法不能降低方法的訪問權限。
可變參數列表(Varargs):
允許方法接受可變數量的參數。
是通過添加一個...來表示一個參數列表的結尾。
方法的拋出(Throws):
用于聲明方法可能拋出的異常。
可以拋出多個異常,每個異常之間用逗號分隔。
方法的內存管理:
方法執行時,除了局部變量,還會在棧內存中創建一個新的作用域。
方法執行結束時,其作用域內的局部變量會被釋放。

浙公網安備 33010602011771號