通過繼承進行設計

2021-06-28 12:55:34 字數 473 閱讀 5902

當我們以乙個現成類為基礎建立乙個新類時,如首先選擇繼承,會使情況變得異常複雜。乙個更好的思路是首先選擇「合成」——如果不能十分確定自己應使用哪乙個。合成不會強迫我們的程式設計進入繼承的分級結構中。同時,合成顯得更加靈活,因為可以動態選擇一種型別(以及行為),而繼承要求在編譯期間準確地知道一種型別。下面這個例子對此進行了闡釋:

inte***ce actor 

public void act()

}class sadactor implements actor

}class stage

void go()

}

public class transmogrify

}

發生變化。在這種情況下,那種狀態的改變同時也產生了行為的變化。

總之,繼承用來定義行為的差異,狀態的變化最好用合成來做。

通過繼承RecursiveTask計算陣列和

思路 可以new forkjoinpool,再通過繼承recursivetask recursiveaction,將其放入forkjoinpool,求得結果。首先新建乙個makearray的類,該類是負責提供陣列的乙個類。public class makearray override protect...

通過繼承Thread實現多執行緒

package com.freeflying.thread.base classname mythread description 通過繼承thread實現多執行緒 author freeflying date 2018年6月21日 class mythread extends thread cla...

Python實現通過繼承覆蓋方法示例

python真是太動態了,所有的方法預設都是虛的。子類定義父類同名函式之後,父類函式被覆蓋。class p object def foo self print i am a p foo class c p def foo self print i am a c foo p p c c p.foo i...