何爲java中的方法?
方法其實跟其他java代碼沒有什麼區別,唯一不同的是在於它是具有特定功能的代碼片段,可以被重複調用和使用。
下面就來體驗下有方法的程序和沒有方法的程序他們間的差別:
沒有方法的程序:
public static void main(String[] args) {
//請計算 10 和 20 的和
int a = 10;
int b = 20;
int c = a + b;
System.out.println(a + "+" + b + "=" + c);
//請計算 666 和888 的和
int x = 666;
int y = 888;
int z = x + y;
System.out.println(x + "+" + y + "=" + z);
//請計算 888 和999 的和
int m = 888;
int n = 999;
int e = m + n;
System.out.println(m + "+" + n + "=" + e);
}
使用的方法後的程序:
public class MethodTest02 {
public static void main(String[] args) {
MethodTest02 methodTest02 = new MethodTest02();
System.out.println(methodTest02.Sum(100,50));
}
public int Sum(int a , int b){
int c = a + b;
return c ;
}
}
這樣的好處是:我們在實現這樣類似功能的時候,不用重複的寫相同功能代碼了,只需要改變相應的參數就可以了。這樣一來就做到了代碼的複用。
該方法如何使用?
首先使用前先看有沒有static修飾,如果有:需要類名.方法名,在本類中可以省略類名,不能使用this關鍵字;如果沒有:需要實例化一個引用.方法名,可以使用this關鍵字。
如何傳遞參數呢?
當我們在調用方法的時候,該方法中有幾個形式參數,我們就需要給該形式參數傳遞幾個實參(值),而且類型也需要跟方法中的類型相同。
java中永遠都是有一種傳值的方法:那就是值傳遞。
實例代碼:(基本數據類型)
public class SwapTest {
public static void main(String[] args) {
int a = 6;
int b = 9;
Swap(a,b);
System.out.println("main方法中,a的值:"+a+";b的值是:"+b);
}
public static void Swap(int a ,int b){
int temp = a;
a = b;
b = temp;
System.out.println("Swap方法中,a的值:"+a+";b的值是:"+b);
}
}
實例代碼:(引用數據類型)
public class SwapTest01 {
public static void main(String[] args) {
DataWrap dw = new DataWrap();
dw.a = 6;
dw.b = 9;
swap(dw);
System.out.println("main方法中,a的值:"+dw.a+"; b的值:"+dw.b );
}
public static void swap(DataWrap dw){
int temp = dw.a;
dw.a = dw.b;
dw.b = temp;
System.out.println("swap方法中,a的值:"+dw.a+"; b的值:"+dw.b);
dw = null;
}
}
class DataWrap{
int a;
int b;
}