1. 程式人生 > >Java基礎(一)方法

Java基礎(一)方法

一.什麼是方法:

1.Java中的方法是用來解決一類問題的程式碼的有序組合,是一個功能模組在這裡插入程式碼片
2.包含在類或者物件中
3.在程式中被建立,在其他地方被引用

二.方法的定義:
方法包含一個方法頭部和方法體:名字第一個單詞以小寫字母作為開頭,後面的單詞則用大寫字母開頭寫,不使用連線符。例如:addPerson。

修飾符 返回值型別 方法名(引數型別 引數名){                 public static int max (int num 1 , int  num2 )                
    ...                                                                                {        int   result  ;
    方法體                                                                                 if(num1>num2)
    ...                                                                                               result = num1;
    return 返回值;                                                                      else             
}                                                                                                     result = num2;
                                                                                                return  result;    
                                                                                        }

三.方法的優點
1.程式簡潔而清晰
2.提高效率,便於維護
3.提高程式碼重用性

下面是一個列子,編寫一個方法,並且如何呼叫它

public class TestMax {
	//java主方法
	public static void main(String[] args) {
		
		int a=2;
		int b=5;
		int k =max(a,b);  //呼叫max方法
		System.out.println("a=2和b=5中比較大的值是"+k);
	}
	
	//定義一個比較大小的方法 返回兩個整數變數較大的值 
	public static int max (int num1 , int num2){
		int result;
		if(num1>num2)
			result = num1;
		else
			result =num2;
		return result;
	}
}

五.方法的使用:
呼叫方法—-當需要呼叫方法執行某個操作時,可以先建立類的物件,然後通過物件名.方法名()來實現;
1、無參無返回值

public class FangfaTest1 {
	public static void main(String[] args) {
		//由類建立物件,並呼叫print方法
		FangfaTest1  test = new FangfaTest1();
		test.print();
		}
	//無參無返回值
	public void print(){
		System.out.println("hello world");
	}
}

2、無參帶返回值

public class FangfaTeat2 {
	public static void main(String[] args) {
	 //建立一個物件
	 FangfaTeat2  test2 = new FangfaTeat2();
	 int a = test2.print();
	 System.out.println(a);
	 }
	//無參帶返回值
	public int print(){
		return 10;
	}
}

3、帶參無返回值

public class FangfaTeat3 {
	public static void main(String[] args) {
		FangfaTeat3  test3 = new FangfaTeat3();
		test3.print(2, 3);
	}
    //帶參無返回值
	public void print(int a, int b){
		System.out.println("a+b="+(a+b));
	}
}

4、帶參帶返回值

public class FangfaTest4 {
	public static void main(String[] args) {
		
		FangfaTest4 test4 = new FangfaTest4();
		int num = test4.print(2, 5);
		System.out.println("num="+num);
	}
	//帶參帶返回值
	public int print(int a,int b){
		return (a+b);
	}
}

注意:
1.返回型別為void,方法中不能使用return 變數/常量;
2.方法的返回值最多隻能有一個,不能返回多個值;
3.方法返回值型別必須相容,例如,如果返回值型別為int,則不能返回String型值
4.呼叫帶參方法時,必須保證實參的數量、型別、順序與形參一一對應
5.方法的引數可以是基本資料型別,如int、double等,也可以是引用資料型別,如String,陣列等;
5.當方法引數有多個時,多個引數可以逗號隔開

六、Java中方法的過載
方法的過載-–如果同一個類中包含了兩個或兩個以上方法名相同、方法引數的個數、順序或型別不同的方法,則稱為方法的過載,也可稱該方法被過載了。

//方法print
	public void print(){
	}
	//過載show方法print,傳一個引數
	public void print(String name){
		
	}
	//過載show方法print,傳2個引數
	public void print(String name,int age){
	
	}
	//過載show方法print,傳2個引數,但順序不同
	public void print(int age ,String name){
	
	}

當呼叫被過載的方法時,java會根據引數的個數和型別來判斷應該呼叫那個過載方法,引數完全匹配的方法被執行。
判斷方法過載的依據
1.必須是在同一類中;
2.方法名相同
3.方法引數的個數、順序或型別不同
4.與方法的修飾符和返回值沒關係

最後在System.out.println(),中println() 是一個方法。System 是系統類。out 是標準輸出物件。