您好,登錄后才能下訂單哦!
這篇文章主要介紹了java中方法是什么,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
初次看到方法兩字,心里有些疑惑。方法不是指為獲得某種東西或達到某種目的而采取的手段與行為方式嗎?這是我們日常生活中所說的方法。而在Java中, 方法就是一個代碼片段,類似于C語言中的函數(shù)。
方法的存在意義:
1.當代碼規(guī)模比較復雜的時候,能夠模塊化地組織代碼。
2.做到代碼被重復使用。一份代碼可以在多個位置使用。
3.讓代碼更好理解更簡單。
4.直接調用現(xiàn)有方法開發(fā),不必重復造輪子。
// 方法定義 public static 方法返回值 方法名稱([參數(shù)類型 形參 ...]){ //方法體代碼; return 返回值; } // 方法調用 返回值變量 = 方法名稱(實參...);
public static void main(String[] args) { int a = 20; int b = 30; int c = add(a,b);//方法的調用 System.out.println(c); } //方法的定義 public static int add(int a,int b) { return a + b; }
結果為:
方法定義時,參數(shù)可以沒有,每個參數(shù)要指定類型。
方法定義時,返回值也可以沒有,如果沒有返回值,則返回值類型應寫成 void。
方法定義時的參數(shù)稱為"形參",方法調用時的參數(shù)稱為 “實參”。
方法的定義必須在類之中, 代碼書寫在調用位置的上方或者下方均可。
Java 中沒有 “函數(shù)聲明” 這樣的概念。
定義方法的時候,不會執(zhí)行方法的代碼。只有調用的時候才會執(zhí)行。
當方法被調用的時候,會將實參賦值給形參。
參數(shù)傳遞完畢后,就會執(zhí)行到方法體代碼。
當方法執(zhí)行完畢之后(遇到 return 語句),就執(zhí)行完畢,回到方法調用位置繼續(xù)往下執(zhí)行。
一個方法可以被多次調用。
public static void main(String[] args) { int a = 20; int b = 30; int c = add(a,b); System.out.println("c = " + c); int d = add(a,c); System.out.println("d = "+ d); int e = add(c,d); System.out.println("e = "+ e); } public static int add(int a,int b) { return a + b; }
結果為:
如果我們需要一個計算兩個整型之和的方法,那么我們可以這樣定義:
public static int addInt(int a,int b) { return a + b; }
如果我們需要一個計算兩個double型之和的方法,那么我們可以這樣定義:
public static double addDouble(double a, double b) { return a + b; }
我們可以發(fā)現(xiàn),這兩個方法的作用基本相同,都是計算兩數(shù)之和,只是參數(shù)和返回類型不同而已。那么我們是否可以將其簡化呢?
public static int add(int a,int b) { return a + b; } public static double add(double a, double b) { return a + b; }
同一個方法名字,供不同版本的實現(xiàn),稱為方法重載。
我們可以通過下面這段代碼進行驗證:
public static void main(String[] args) { int a = 20; int b = 30; double c = 5.4; double d = 7.8; System.out.println(add(a,b)); System.out.println(add(c,d)); } public static int add(int a,int b) { return a + b; } public static double add(double a, double b) { return a + b; }
結果為:
方法名相同
參數(shù)列表不同(參數(shù)個數(shù)和參數(shù)類型不同)
返回值不作要求
重載不是必須要在一個類當中(繼承)
當兩個方法的名字相同,參數(shù)也相同,但是返回值不同的時候,不構成重載。 例如:
此時編輯器便報錯。
一個方法在執(zhí)行過程中調用自身,同時有一個趨近于終止的條件,就稱為方法遞歸。
public static void main(String[] args) { int n = 5; int ret = fac(n); System.out.println("ret = " + ret); } //求n的階乘 public static int fac(int n) { if(n == 1) { return 1; } else { return n * fac(n - 1); } }
執(zhí)行結果為:
例如上面這段代碼,它的執(zhí)行過程如下:
更簡潔的解釋如下:
所有的遞歸都可以這樣分析。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“java中方法是什么”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業(yè)資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。