JAVA程式設計心得 多型設計初步

2021-09-09 03:06:12 字數 1360 閱讀 2957

物件導向的思想中,封裝,繼承,多型作為特性會在開發中廣泛應用,乙個健壯的系統除了功能強大以外,它的可擴充套件性應該也很強,多型恰好應用了這個思路。

下面我以楊小聰去某地的方式為例,我們知道首先楊小聰要去某地的話需要駕駛交通工具,那麼我首先定義乙個driver類負責駕駛

public class driver 

public void setname(string name)

public void drive(vihecle v)

}

上述name代表駕駛員的名字,drive代表如何駕駛,vihecle代表交通工具,因為我目前還不知道用什麼交通工具,所以我們可以把此類定義為抽象,我們知道所有的交通工具都是可以有駕駛的方法,那麼go就作為乙個抽象方法,我這裡只定義它為抽象方法,沒有具體實現,僅僅把駕駛員的資訊與目的位址當引數傳入。

public abstract class vihecle

既然由駕駛員driver ,駕駛方法drive,駕駛的交通工具vihecle,那麼接下來就需要定義目的位址了address,name代表目的名稱

public class address 

public void setname(string name)

public address(string name)

}

接下來我們就可以定義實際交通工具類了,這裡我以汽車car,與飛機plane兩個類為例。這兩個類同時都繼承了交通工具vihecle,那麼我在實際呼叫中就可以不用多次傳值了。

public class car extends vihecle

}

public class plane extends vihecle

}

最後我們可以寫乙個測試類來測試結果

public class test 

}

輸出結果:

楊小聰開車去武漢

楊小聰坐飛機去武漢

總結:

其實我們也可以在driver類中按交通工具每個類來定義方法,但是這樣的設計思路不夠靈活每次去還要修改這一層的**。將開車的方式抽象化,我們站在客戶的立場上為他們設計,客戶想要開車我們就將對應車的物件傳入,這樣的方式擴充套件性很強,如果他還想做火車,我們重新定義乙個火車類來繼承vihecle,driver部分我們不需要修改任何邏輯。

多型的三個特性,有繼承,有重寫,有父類的引用指向子類的物件。

Java多型初步

多型 1.多型就是具有表現多種形態的能力和特徵,更專業的說法,同乙個實現介面,使用不同的例項而執行不同的操作。2.子類到父類的轉換 向上轉型 規則 將乙個父類的引用指向乙個子類物件,稱為向上轉型,自動進行型別轉換。此時通過父類引用變數呼叫的方法是子類覆蓋或繼承父類的方法,不是父類的方法。此時通過父類...

Java設計模式學習心得

1.從理解設計的幾大原則開始 1 open close principle 開 程式可拓展,熱插拔形式 閉 禁止對上一版本的程式進行 修改 原則,通常要用到介面達到這種效果。2 liskov substitution principle lsp黎克特制替換原則,任何可以使用基類的地方均可以使用其子類...

Java 網路程式設計 Socket 初步入門

首先是寫乙個服務端,服務端只要實現或者建立serverscoket就行。然後我們就要做乙個死迴圈,讓他不停的接收請求,接收請求之後,他會把每個會話,封閉成乙個socket物件。我們可以在這個物件中,傳送,讀取資訊,與客戶端進行互動。public class socketserver extends ...