设计模式之桥接模式

来源:互联网 发布:科比詹姆斯知乎 编辑:程序博客网 时间:2024/06/06 04:55
package BridgeModel;public class BridgeModel1 {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubPerson man=new Man();Person lady=new Lady();Clothing jacket=new Jacket();Clothing trouser=new Trouser();jacket.personDressCloth(man);trouser.personDressCloth(man);jacket.personDressCloth(lady);trouser.personDressCloth(lady);}}abstract class Clothing{public abstract void personDressCloth(Person person);}class Jacket extends Clothing{@Overridepublic void personDressCloth(Person person) {// TODO Auto-generated method stubSystem.out.println(person.getType()+"穿夹克");}}class Trouser extends Clothing{@Overridepublic void personDressCloth(Person person) {// TODO Auto-generated method stubSystem.out.println(person.getType()+"穿裤子");}}abstract class Person{private Clothing clothing;private String type;public Clothing getClothing() {return clothing;}public void setClothing(Clothing clothing) {this.clothing = clothing;}public String getType() {return type;}public void setType(String type) {this.type = type;}public abstract void dress(); }class Man extends Person{public Man(){setType("男人");}@Overridepublic void dress() {// TODO Auto-generated method stubClothing clothing=getClothing();clothing.personDressCloth(this);}}class Lady extends Person{public Lady(){setType("女人");}@Overridepublic void dress() {// TODO Auto-generated method stubClothing clothing=getClothing();clothing.personDressCloth(this);}}

0 0