架构师训练营 第三周作业
发布于: 2020 年 06 月 23 日
作业第1题:
手写单例类
使用场景:
不用进行实例重新申请;
多用户使用同一实例进行统一控制;
作业第2题:
接口:
public interface Module { public void print();}
普通组件:
public class BaseModule implements Module { private String name; public BaseModule(String name) { this.name = name; } public void print() { System.out.println(name); }}
窗口组件:
public class Container extends BaseModule { private List<Module> children; public Container(String name) { super(name); children = new LinkedList<>(); } public Container add(BaseModule m) { children.add(m); } public void print() { super.print(); children.forEach(BaseModule::print); }}
入口:
public class Window { public static void main(String[] args) { Container winFrom = new Container("WINDOW窗口"); BaseModule picture = new BassModule("LOGO图片"); BaseModule loginButton = new BassModule("登录"); BaseModule registerButton = new BassModule("注册"); Container frame1 = new Container("Frame1"); BaseModule usernameLabel = new BassModule("用户名"); BaseModule textBox1 = new BassModule("文本框"); BaseModule passwordLabel = new BassModule("密码"); BaseModule passwordBox = new BassModule("密码框"); BaseModule checkBox = new BassModule("复选框"); BaseModule textBox2 = new BassModule("记住用户名"); BaseModule linkTable = new BassModule("忘记密码"); winFrom.add(picture); winFrom.add(loginButton); winFrom.add(registerButton); winFrom.add(frame1); frame1.add(usernameLabel); frame1.add(passwordLabel); frame1.add(passwordBox); frame1.add(checkBox); frame1.add(textBox2); frame1.add(linkTable); winFrom.print(); }}
划线
评论
复制
发布于: 2020 年 06 月 23 日阅读数: 67
Glowry
关注
还未添加个人签名 2019.02.13 加入
还未添加个人简介
评论