当前位置: 首页 > 后端技术 > Java

Java中的桥接模式

时间:2023-04-01 23:44:06 Java

桥接模式介绍Bridge用于将抽象与实现解耦,使两者可以独立变化。这类设计模式属于结构型模式,通过在抽象和实现之间提供一个桥接结构来实现两者的解耦。该模式涉及充当桥梁的接口,使实体类的功能独立于接口实现类。两种类型的类都可以在结构上相互独立地进行更改。BrandinterfaceBrand//产品品牌公共接口Brand{voidname();}implementclassbrandAandbrandB//AbrandpublicclassABrandimplementsBrand{@Overridepublicvoidname(){System.out.print("A品牌”);}}//BbrandpublicclassBBrandimplementsBrand{@Overridepublicvoidname(){System.out.print("Bbrand");}}AbstractproductclassProduct//AbstractproductclasspublicabstractclassProduct{//Brand,组合privateBrand品牌;公共产品(品牌品牌){this.brand=brand;}publicvoidname(){brand.name();//品牌名称}}subclassproductCandD//CProductpublicclassCProductextendsProduct{publicCProduct(Brandbrand){super(brand);}@Overridepublicvoidname(){super.name();System.out.println("C产品");}}//DProductpublicclassDProductextendsProduct{publicDProduct(Brandbrand){super(brand);}@Overridepublicvoidname(){super.name();System.out.println("DProduct");}}测试类公共类测试{公共统计icvoidmain(String[]args){BrandbrandA=newABrand();//AbrandBrandbrandB=newBBrand();//BbrandCProductcProduct=newCProduct(brandA);//Cproduct,withABrand,即品牌A的产品CDProductdProduct=newDProduct(brandB);//产品D,与品牌B,即品牌B的产品DcProduct.name();dProduct.name();/***输出结果:*A牌C品*B牌D品*/}}测试结果A牌C品B牌D品