組合設計模式編寫程序

{"type":"doc","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"請用組合設計模式編寫程序,打印輸出圖1的窗口, 窗口組件的樹結構如圖2所示。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"1、新增接口IForm"}]},{"type":"codeblock","attrs":{"lang":"java"},"content":[{"type":"text","text":"public interface IForm {\n public void print();\n}"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"2、實現接口的默認實現AbstractForm"}]},{"type":"codeblock","attrs":{"lang":"java"},"content":[{"type":"text","text":"public abstract class AbstractForm implements IForm {\n private String label;\n public AbstractForm(String _label){\n this.label = _label;\n }\n \n public void print() {\n System.out.println(\"print \" + this.getClass().getSimpleName() + \"(\" + getLabel() + \")\");\n }\n \n public String getLabel(){\n return this.label;\n }\n}"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"3、實現Button、Label、TextBox、Picture等具體類。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"4、實現Frame類、WinForm類"}]},{"type":"codeblock","attrs":{"lang":"java"},"content":[{"type":"text","text":"public class Frame extends AbstractForm {\n private Vector vector = new Vector();\n public Frame(String _label){\n super(_label);\n }\n @Override\n public void print() {\n super.print();\n for (IForm iform:\n vector) {\n iform.print();\n }\n }\n \n public void add (IForm form){\n vector.add(form);\n }\n}\n"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"codeblock","attrs":{"lang":"java"},"content":[{"type":"text","text":"public class WinForm extends Frame {\n private static String STATIC_WINDOW_FORM_LABEL = \"WINDOW窗口\";\n public WinForm(){\n this(STATIC_WINDOW_FORM_LABEL);\n }\n public WinForm(String _label) {\n super(_label);\n }\n}\n"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"碼雲地址:https://gitee.com/bigstonezg/window-form.git"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}}]}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章