方法過載與記憶體解析
阿新 • • 發佈:2018-11-26
方法的重(chong)載:
方法的過載指的是一個類中可以定義有相同的名字,引數不同的多個方法。呼叫時,會根據不同的引數表選擇對應的方法。與普通方法一樣,構造方法也可以過載:。
例項:
在person類中新增如下方法:
Person(int _id, int_age){ id = _id; age = _age; } void info(){ System.out.println("My id is"+id); } void info(String t){ System.out.println( t +" "+id+" "+age); }
執行如下程式、
public class Test{
public static void main(String args[]){
Person p = new Person(1,20);
p.info(); //更符合面對物件的包裝,話說起來更加方便。
p.info("hello");
}
}
過載的好處:
例子
class Person{ Person(){ id = 100; age = 20; } Person( int _ id){ id = _ id; age = 30; } Person( int _id, int _age ){ id = _id; age = _age; } //呼叫不同的方法,根據自身選擇。 }
構造方法:
1:構造方法的方法名必須與類名相同。
2:構造方法沒有返回值,也不能定義為void,在方法名前面不宣告方法型別。
3:構造方法不能作用,是完成物件的初始工作,它能夠把定義物件時的引數傳遞給物件的域。
4:構造方法不能由程式設計人員呼叫,而要系統呼叫。即,每當類例項化一個物件後,類會自動呼叫構造方法。
5:構造方法可以過載,以引數的個數,型別,或排序順序區分。