Python 官方文档:入门教程 => 点击学习
目录一.介绍二.UML类图1.透明方式2.安全方式三.具体代码四.使用场景五.优点一.介绍 组合模式(Composite Pattern)属于结构型模式。组合模式又叫作部分整体模式,
组合模式(Composite Pattern)属于结构型模式。组合模式又叫作部分整体模式,它是一种将对象组合成树状层次结构的模式,用来表示整体-部分的关系,使用户对单个对象和组合对象具有一致的访问性。组合模式有透明方式和安全方式两种实现方式
业务代码
//抽象节点
public abstract class Component {
abstract void add(Component component);
abstract void remove(Component component);
abstract Component getChild(int i);
abstract void operation();
}
//叶子节点
class Leaf extends Component{
private String name;
public Leaf(String name) {
this.name = name;
}
@Override
void add(Component component) {}
@Override
void remove(Component component) {}
@Override
Component getChild(int i) {
return null;
}
@Override
void operation() {
System.out.print(name);
}
}
//树枝节点
class Composite extends Component{
private ArrayList<Component> children = new ArrayList<>();
@Override
void add(Component component) {
children.add(component);
}
@Override
void remove(Component component) {
children.remove(component);
}
@Override
Component getChild(int i) {
return children.get(i);
}
@Override
void operation() {
children.forEach(Component::operation);
}
}
客户端
public class Client {
public static void main(String[] args) {
Component level1 = new Composite();
level1.add(new Leaf("1"));
level1.add(new Leaf("2"));
Component level2 = new Composite();
level2.add(new Leaf("2.1"));
level1.add(level2);
level1.operation();
}
}
到此这篇关于Java结构型模式中的组合模式详解的文章就介绍到这了,更多相关Java组合模式内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: Java结构型模式中的组合模式详解
本文链接: https://www.lsjlt.com/news/196457.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0