java结构型设计模式——组合模式

来源:互联网 发布:熟练使用软件 英文 编辑:程序博客网 时间:2024/06/04 01:32

1、模式理解:组合模式就是把两个对象放在一个对象里喽,确切的说是一个对象包含别的对象的集合,好比你一老板可以有很多个员工,够清除了吧

2、运用场景:单对多或者多对单的时候可以使用组合模式

3、代码示例:

//先创建员工对象public class Staff {    String name;    public Staff(String name) {        this.name=name;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    }
//再创建老板对象,该对象是组合模式,因为老板由很多员工public class Manager {    private String name;    private List<Staff> staffList;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public List<Staff> getStaffList() {        return staffList;    }    public void setStaffList(List<Staff> staffList) {        this.staffList = staffList;    }  }
//最后创建一个测试类测试一下public class Main {    public static void main(String[] args) {        Staff s1=new Staff("土豆");        Staff s2=new Staff("番茄");        Staff s3=new Staff("花生");        List<Staff> staffs=new ArrayList<>();        staffs.add(s1);        staffs.add(s2);        staffs.add(s3);                Manager manager=new Manager();        manager.setStaffList(staffs);        for (Staff staff : manager.getStaffList()) {            System.out.println(staff.getName());        }    }}

原创粉丝点击