命名轉換是任何程式開發工程的重要部分,但當處理特別的名稱的時候命名轉換也會變得相當繁瑣。簡化這一過程的其中一個方法是通過過載而重新使用方法的名稱。過載能夠使具有相同名稱但不相同數目和型別引數的類傳遞給方法。下面是小編為大家搜尋整理的Java過載使用方法,希望大家能有所收穫,更多精彩內容請及時關注我們應屆畢業生考試網!
名稱中包含的內容
當將名稱分配到類、方法、變數時,使用能夠容易理解的名稱相當重要。例如,建立一個定義一個人的類,此時應該建立一個合適的名為Person的類。這一個類命名為一個隨便的名稱dkjfb也無可厚非,但對於開發這一軟體的任何程式設計師是沒有什麼意義,因為它不能代表本身的含義。Person類應該具有以下的內容:
class Person {
private String firstName;
private String lastName;
}
列舉的程式碼聲明瞭一個名為Person的類,其帶有兩個成員變數引數以儲存姓和名。分配給成員變數引數的名稱就符合它們本身的含義,這樣就很容易地識別儲存在變數中的內容。當呼叫一個Person類時,我們可以很直觀地使用這些成員變數引數。
物件構建
建立一個新的物件的例項會觸發類的建構函式的方法。以下程式碼使用了一個基本的建構函式,這一建構函式無需接收任何變數:
class Person {
private String firstName;
private String lastName;
Person() {
tName = "";
Name = "";
} }
這一基本的建構函式使用空字串的變數引數。在以後的程式中可以看到,在很多時候,物件建立時都附帶已知的名字。你可以使用方法過載來建立多個方法,但每一個方法都有自己的方法記號。記號指定了被方法接受的引數。例如,這裡是前一建構函式的方法記號:
Person()
這一方法可以過載以接收姓和名或者只是名:
class Person {
private String firstName;
private String lastName;
Person() {
tName = "";
Name = "";
}
Person(String lname) {
tName = "";
Name = lname;
}
Person(String fname, String lname) {
tName = fname;
Name = lname;
} }
在一個類中任何具有相同名稱的兩個方法必須有不同的引數型別或者不同的`引數數目,否則編譯器拒絕它們。現在類可以宣告如下:
Person p1 = new Person();
Person p2 = new Person("Patton");
Person p3 = new Person("Patton", "Tony");
一個Java的特性
過載能夠用於標準的Java類中。tln方法接收多引數列表。相關範例程式碼可以見以下:
tln("");
以及:
int test = 2;
tln(test);
這兩個程式碼片段編譯與執行時都沒有任何錯誤。Println方法已經被設計為接收不同的變數,所以過載超乎建構函式的程式。為了更進一步的說明這一點,我們可以通過新增一個print方法來輸出姓和名以加深我們的範例程式:
class Person {
private String firstName;
private String lastName;
Person() {
tName = "";
Name = "";
}
Person(String lname) {
tName = "";
Name = lname;
}
Person(String fname, String lname) {
tName = fname;
Name = lname;
}
public void Print() {
tln(firstName + " " + lastName);
}
public void Print(String pout) {
tln(pout + " " + firstName + " " + lastName);
}
}
這兩個print方法輸出成員變數,其中一個方法接收文字而輸出,而另一方法沒有采用這樣的方式。
當使用過載的時候
過載是一個功能強大的特性,但你只能在需要的時候使用它。當你確實需要不同變數的多種方法,但這些方法都可以做相同的任務,此時就可以採用過載方式。也就是說,如果多種方法執行不同的任務,此時不能採用過載方式。否則,這一方法只能導致你的程式顯得很混亂,特別是其他程式設計師閱讀你的程式碼的時候。