Java设计模式:桥接模式解决的架构设计痛点

public abstract void produce();

/**

  • 产品销售

*/

public abstract void sell();

}

抽象工厂,传入一个什么样的产品就生产和销售该产品:

public abstract class Factory {

private Product product;

public Factory(Product product) {

this.product = product;

}

public void setProduct(Product product) {

this.product = product;

}

/**

  • 工厂运营。

*/

public void operation() {

product.produce();

product.sell();

}

}

具体的工厂实现:

public class SomeFactory extends Factory{

public SomeFactory(Product product) {

super(product);

}

}

那么原先的船和汽车作为产品的角色,分别抽象定义:

public class Boat extends Product {

@Override

public void produce() {

System.out.println(“生产船”);

}

@Override

public void sell() {

System.out.println(“销售船”);

}

}

public class Car extends Product{

@Override

public void produce() {

System.out.println(“生产汽车”);

}

@Override

public void sell() {

System.out.println(“销售汽车”);

}

}

测试:

Car car=new Car();

Factory factory=new SomeFactory(car);

factory.operation();

Boat boat=new Boat();

factory.setProduct(boat);

factory.operation();

输出:

生产汽车

销售汽车

生产船

销售船

如果市场行情发生变化,现在需要转型生产手机,那么只需要增加一款产品Phone即可,原有的工厂产线都得到复用:

public class Phone extends Product{

@Override

public void produce() {

System.out.println(“生产手机”);

}

@Override

public void sell() {

System.out.println(“销售手机”);

}

}

测试:

Car car=new Car();

Factory factory=new SomeFactory(car);

factory.operation();

Boat boat=new Boat();

factory.setProduct(boat);

factory.operation();

Phone phone=new Phone();

factory.setProduct(phone);

factory.operation();

输出:

生产汽车

销售汽车

生产船

销售船

生产手机

销售手机

附:

最后希望可以帮助到大家!

千千万万要记得:多刷题!!多刷题!!

之前算法是我的硬伤,后面硬啃了好长一段时间才补回来,算法才是程序员的灵魂!!!!

篇幅有限,以下只能截图分享部分的资源!!

(1)多线程(这里以多线程为代表,其实整理了一本JAVA核心架构笔记集)

image

(2)刷的算法题(还有左神的算法笔记)

image

(3)面经+真题解析+对应的相关笔记(很全面)

image

(4)视频学习(部分)

ps:当你觉得学不进或者累了的时候,视频是个不错的选择

在这里,最后只一句话:祝大家offer拿到手软!!

截图分享部分的资源!!

(1)多线程(这里以多线程为代表,其实整理了一本JAVA核心架构笔记集)

[外链图片转存中…(img-PJj6R9dT-1714391836412)]

(2)刷的算法题(还有左神的算法笔记)

[外链图片转存中…(img-UcoDnFyE-1714391836413)]

(3)面经+真题解析+对应的相关笔记(很全面)

[外链图片转存中…(img-uNiPGHyO-1714391836413)]

(4)视频学习(部分)

ps:当你觉得学不进或者累了的时候,视频是个不错的选择

在这里,最后只一句话:祝大家offer拿到手软!!

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值