架构师训练营第三周【作业】

发布于: 2020 年 06 月 24 日

作业一:请在草稿纸上手写一个单例模式的实现代码。

分别使用懒汉式与饿汉式两种写法,代码如下:

(注:该饿汉式写法有线程安全问题,需要双重检验即可避免该问题。)

作业二:请用组合设计模式编写程序。

使用java编程,使用组合模式,代码结构如下:

public class Module{
private String name;
public Module(String name){
this.name=name;
}
public void print() {
System.out.println(name);
}
}
public class Panel extends Module{
private List<Module> children=new ArrayList<>();
public Panel(String name) {
super(name);
}
public void add(Module m) {
children.add(m);
}
@Override
public void print() {
super.print();
for (Module m : children) {
m.print();
}
}
}

测试方法如下:

public static void main(String[] args) {
Panel window = new Panel("WINDOW窗口");
window.add(new Module("LOGO图片"));
window.add(new Module("登录"));
window.add(new Module("注册"));
Panel frame1 = new Panel("Frame1");
window.add(frame1);
frame1.add(new Module("用户名"));
frame1.add(new Module("文本框"));
frame1.add(new Module("密码"));
frame1.add(new Module("密码框");
frame1.add(new Module("复选框"));
frame1.add(new Module("记住用户名"));
frame1.add(new Module("忘记密码"));
window.print();//运行此句,即可打印该树结构
}

最后运行window.print();即可。

用户头像

小K

关注

还未添加个人签名 2019.11.08 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第三周【作业】