---
# System prepended metadata

title: '方法的筆記:'

---

# 方法的筆記:

public static void name(int x,String y){

}

public static :修飾詞，不一定有static
void/回傳型別:若為void，不必寫return ，若為型別，必須return
傳回相對應型別結果
name:方法名稱
(int x,String y): 傳入參數


方法分為物件方法與靜態方法

物件方法:
1.一定要new其物件後，才可用其方法，並且可以使用物件屬性。
2.物件方法可呼叫靜態方法做使用(所以常常會透過物件方法取得屬性，丟到靜態方法計算，再取回來)

靜態方法:
1.方法或屬性必須加static為靜態
2.接收的參數由方法中定義
3.只能使用靜態屬性與靜態方法，不可使用類別中的一般屬性或是方法
4.呼叫時，不必new物件，只要類別.屬性或是類別.方法
5.通常不會接收太多參數，通常做計算使用
```
public static double BMI(double h,double w) {
		return w/(h*h);	
	}
```

Overloading(覆載)
Overloading是指相同的方法名稱，但傳入的參數類別或個數不同。

PassByValue
基本型別當參數傳入時，其值不受方法影響，但傳入的若是物件或是String，將會改變(因記憶體位置相同)
講義p.175

        


