情人节快到了,应该给女朋友送礼物了。借此机会恶搞下适配器模式
引用
适配器模式:将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。
需求是,原先送给女朋友一辆自行车,作为代步工具,现在有点钱了准备升级一下,到摩托车。。。。总结。。也许它能作为代步工具,不一定是自行车,有可能是个像自行车的摩托车。。。。
看一下自行车接口
package adpter.demo;
public interface Bike {
public void go();
}
再看看我女朋友现有的自行车
package adpter.demo;
public class RedBike implements Bike{
public void go(){
System.out.println("自行车 速度很慢!!!");
}
}
不过自行车真的太慢了。。。
在隆重介绍新买的摩托车。。
package adpter.demo;
public interface Moto {
public void go();
}
package adpter.demo;
public class RedMoto implements Moto{
public void go() {
System.out.println("摩托车 速度很快!!!!!!");
}
}
现在我女朋友天天上班骑自行车如下。。。。
package adpter.demo;
public class ChasingGirl {
public void gotoCompany(Bike bike){
bike.go();
}
}
发现了接口是自行车,现在遇到麻烦了。。因为自行车和摩托车接口不同。。。所以我需要一个适配器来解决。
package adpter.demo;
public class MotoAdapter implements Bike{
private Moto moto;
public MotoAdapter(Moto moto){
this.moto=moto;
}
public void go() {
moto.go();
}
}
测试一下
package adpter.demo;
public class ChasingGirl {
public void gotoCompany(Bike bike){
bike.go();
}
public static void main(String[] args){
ChasingGirl chasingGirl = new ChasingGirl();
chasingGirl.gotoCompany(new RedBike());
chasingGirl.gotoCompany(new MotoAdapter(new RedMoto()));
}
}
结果如下:
自行车 速度很慢!!!
摩托车 速度很快!!!!!!
已经完全符合我女朋友的需求了。
最后祝大家情人节快乐。
分享到:
相关推荐
标题和描述中的“追MM与23种设计模式”巧妙地将追求恋人的社交情境与软件工程中的设计模式相联系,既生动又富有创意。这一主题不仅展现了设计模式的广泛应用,还通过日常生活的例子使复杂的概念变得易于理解。下面,...
标题《从追MM谈Java的23种设计模式》独特地将Java设计模式与“追女孩”的生活场景相结合,通过一系列生动的例子来解释各种设计模式的概念和使用场景。在IT行业中,这种以生活场景来比喻技术概念的方式,能帮助人们更...
5. 适配器模式:当两个类不能兼容时,适配器允许它们协同工作。就像你调整自己的习惯,以便更好地适应MM的生活方式。 6. 桥接模式:将抽象部分与实现部分分离,使它们可以独立变化。在追MM的过程中,你可以灵活地...
### 追MM与设计模式——IT知识解析 #### 创建型模式 ##### 1. 工厂模式 (FACTORY) **定义**: 客户类和工厂类分离,消费者只需要向工厂请求所需的产品,无需关心产品的具体实现。 **示例**: 在追MM的过程中,请MM...
6. **适配器模式**:不懂粤语的你通过朋友Kent作为适配器与香港来的Sarah交流,适配器模式解决了不同接口之间的通信问题,使得原本不能协作的类可以一起工作。 7. **桥接模式**:根据情境灵活组合问候语,桥接模式...
6. **适配器模式(Adapter)**:如果你的爱好和MM的兴趣不合拍,适配器模式可以让你的爱好与她的兴趣相匹配。它使两个不兼容的接口能够协同工作。 7. **桥接模式(Bridge)**:将你的性格和追求方式分离,桥接模式...
- **适配器模式**:类似于调整自己的行为习惯以适应对方的性格特点。 这种寓教于乐的方式不仅增加了学习的乐趣,也使抽象的设计模式概念变得更容易理解和记忆。 #### 六、结语 通过本文的解析,我们可以看到,将...
8. **适配器模式**:如果GG和MM的喜好不匹配,适配器模式能将两个不兼容的接口桥接起来,使他们能够协同工作。 9. **桥接模式**:GG的求爱策略和表达方式可以独立变化,桥接模式将抽象部分与实现部分分离,使它们...
适配器模式是一种结构型设计模式,它使不兼容的接口能够一起工作。在追MM的场景中,这可以比喻为调整自己的行为或语言风格,以便更好地适应或匹配不同MM的喜好和个性,从而增加成功的可能性。 ### 7. Bridge(桥接...
《追MM与23种模式》是一篇以幽默方式介绍设计模式的文章,通过与追求女性相关的场景,生动地阐述了23种常见的设计模式。设计模式是软件工程中经过实践验证的优秀设计策略,用于解决特定场景下的复用性、灵活性和可...
文档"java23种设计模式与追MM.doc"以生动有趣的比喻解释了这些模式,帮助初学者更好地理解和记忆。 1. **工厂模式**:就像在麦当劳或肯德基点餐,你只需要告诉服务员“四个鸡翅”,而不用关心鸡翅是如何制作的。...
本篇解说将以趣味的“追MM”为比喻,来阐述几种常见的创建型模式和结构型模式。 1. **工厂模式**:如同在麦当劳或肯德基点餐,你只需要告诉服务员要“四个鸡翅”,而无需关心鸡翅是如何制作的。在编程中,工厂模式...
追MM的过程可以巧妙地与设计模式联系起来。比如,单例模式就像是追求MM时的独特策略,只有一位正确的“她”;工厂方法则是根据不同情况选择不同的追求方式;建造者模式可以类比为逐步构建一段完美的表白词句;适配器...
《Java23种设计模式与追MM》这本书通过一种轻松幽默的方式,将复杂的软件设计模式原理与现实生活中的恋爱追求技巧相结合,让读者在享受阅读乐趣的同时,深入理解设计模式的精髓。 ### 单例模式(Singleton Pattern...
【追MM与Java的23种设计模式】这篇文章将编程中的设计模式与追求女性的场景相结合,用生动的例子解释了23种设计模式的核心概念。以下是各设计模式的详细解析: 1. **工厂模式(Factory)**:就像在麦当劳和肯德基...
在追MM的例子中,工厂就是餐馆,不论选择麦当劳还是肯德基,你只需要告诉服务员“来四个鸡翅”。工厂模式隐藏了具体的创建过程,使代码更加灵活。 2. **建造者模式**(Builder Pattern): 建造者模式将复杂对象的...