<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
示例名称:家庭合唱比赛示例说明:定义抽象的 父亲(AbstractFather)、 母亲(Abstractmother)和 孩子(AbstractChild)及抽象行为Sing。定义抽象的 家庭(AbstractFamily),包含 父亲、 母亲和 孩子行为有初始化成员(ConstructMember),准备(抽象的GetReadyToSing),合唱(Tutti),谢幕(抽象的Thank)。定义抽象的 家庭工厂负责创建 父亲、 母亲和 孩子。
定义家庭A(FamilyA)、父亲A(FatherA)、母亲A(MotherA)、和孩子A(ChildA)及家庭工厂A(FactoryA)分别继承自家庭、父亲、母亲、孩子和家庭工厂。
示例类图:

关键部分说明
家庭、父亲、母亲、孩子和家庭工厂






























































关键在于这个抽象的家庭(AbstractFamily),它的行为合唱(Tutti)包装了基于通过抽象的家庭工厂(AbstractFamilyFactory)创建的家庭成员的行为。
家庭A



































































通过对对应的抽象类的继承实现了和抽象类相同的创建、组织和表示。
调用及运行结果





