【架构师训练营 - week3 -1】作业
发布于: 2020 年 06 月 25 日
作业一:
请在草稿纸上手写一个单例模式的实现代码,拍照提交作业。
作业二:
请用组合设计模式编写程序,打印输出图 1 的窗口,窗口组件的树结构如图 2 所示,打印输出示例参考图 3。
public class Main { public static void main(String[] args) { WinFormInterface winFormInterface = new WinForm(); winFormInterface.printPicture("log图片"); winFormInterface.printButton("登录"); winFormInterface.printButton("注册"); Frame frame = winFormInterface.getFrame(); frame.getLabel().getCustomLabel().print("用户名"); frame.getBox().getTextBox().print("文本框"); frame.getLabel().getCustomLabel().print("密码"); frame.getBox().getPasswordBox().print("密码框"); frame.getBox().getCheckBox().print("复选框"); frame.getBox().getTextBox().print("记住用户名"); frame.getLabel().getLinkLabel().print("忘记密码"); }}public interface WinFormInterface { void printPicture(String pictureName); void printButton(String buttonName); Frame getFrame();}public class WinForm implements WinFormInterface { public WinForm(){ System.out.println("WINDOWS窗口"); } public void printPicture(String pictureName) { System.out.println(pictureName); } public void printButton(String buttonName) { System.out.println(buttonName); } public Frame getFrame() { System.out.println("FRAME1"); return new Frame(); }}public class Frame { public Label getLabel() { return new Label(); } public Box getBox() { return new Box(); }}public class Label { public CustomLabel getCustomLabel() { return new CustomLabel(); } public LinkLabel getLinkLabel() { return new LinkLabel(); }}public class Box { public TextBox getTextBox() { return new TextBox(); } public PasswordBox getPasswordBox() { return new PasswordBox(); } public CheckBox getCheckBox() { return new CheckBox(); }}public class CheckBox extends Print {}public class CustomLabel extends Print {}public class LinkLabel extends Print {}public class PasswordBox extends Print {}public class TextBox extends Print {}public class Print { public void print(String name) { System.out.println(name); }}
划线
评论
复制
发布于: 2020 年 06 月 25 日阅读数: 40
早睡早起
关注
还未添加个人签名 2019.09.05 加入
还未添加个人简介
评论