自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java設計模式之:適配器模式

開發(fā) 后端
在地球時代,所有坐騎都是只能跑,不能飛的,而現(xiàn)在很多坐騎在地球都可以飛了。假設,地球時代的坐騎只能跑,而現(xiàn)在的坐騎不僅能飛還能跑,我們可以用類適配模式來實現(xiàn)。詳細請看下文

這里說兩種適配器模式

1、類適配模式

在地球時代,所有坐騎都是只能跑,不能飛的,而現(xiàn)在很多坐騎在地球都可以飛了。假設,地球時代的坐騎只能跑,而現(xiàn)在的坐騎不僅能飛還能跑,我們可以用類適配模式來實現(xiàn),要點是,適配器繼承源類,實現(xiàn)目標接口:

  1. package adapter;  
  2.  
  3. /**  
  4.  * DOC 源  
  5.  *   
  6.  */ 
  7. public class Sources {  
  8.     public void run() {  
  9.         System.out.println("run");  
  10.     }  
  1. package adapter;  
  2.  
  3. /**  
  4.  * DOC 目標接口  
  5.  *   
  6.  */ 
  7. public interface ITarget {  
  8.     public void run();  
  9.     public void fly();  
  1. package adapter;  
  2.  
  3. /**  
  4.  * DOC 繼承源類,實現(xiàn)目標接口,從而實現(xiàn)類到接口的適配  
  5.  *   
  6.  */ 
  7. public class Adapter extends Sources implements ITarget {  
  8.  
  9.     @Override 
  10.     public void fly() {  
  11.         System.out.println("fly");  
  12.     }  

2、對象適配模式

假設一個適配器要適配多個對象,可以將這些對象引入到適配器里,然后通過調用這些對象的方法即可:

  1. package adapter;  
  2.  
  3. /**  
  4.  *   
  5.  * DOC 源對象,只有跑的功能  
  6.  *   
  7.  */ 
  8. public class Animal {  
  9.  
  10.     public void run() {  
  11.         System.out.println("run");  
  12.     }  
  1. package adapter;  
  2.  
  3. /**  
  4.  * DOC 目標接口,既能跑,又能飛  
  5.  *   
  6.  */ 
  7. public interface ITarget {  
  8.     public void run();  
  9.     public void fly();  
  1. package adapter;  
  2.  
  3. /**  
  4.  * DOC 通過構造函數引入了源對象,并實現(xiàn)了目標的方法  
  5.  *   
  6.  */ 
  7. public class Adapter implements ITarget {  
  8.  
  9.     private Animal animal;  
  10.  
  11.     // private animal animal2....可以適配多個對象  
  12.  
  13.     public Adapter(Animal animal) {  
  14.         this.animal = animal;  
  15.     }  
  16.  
  17.     /**  
  18.      * DOC 拓展接口要求的新方法  
  19.      */ 
  20.     public void fly() {  
  21.         System.out.println("fly");  
  22.     }  
  23.  
  24.     /**  
  25.      * DOC 使用源對象的方法  
  26.      */ 
  27.     public void run() {  
  28.         this.animal.run();  
  29.     }  

原文鏈接:http://blog.csdn.net/a107494639/article/details/7567678

【編輯推薦】

  1. Java設計模式之:創(chuàng)建者模式
  2. Java數據結構:棧的實現(xiàn)
  3. Java protobuf框架使用向導
  4. Java端通過CXF調用.NET端服務
  5. Java線程池的原理及幾類線程池的介紹
責任編輯:林師授 來源: a107494639的博客
相關推薦

2021-02-18 08:39:28

設計模式場景

2020-10-25 08:56:21

適配器模式

2013-11-26 16:39:21

Android設計模式

2012-04-12 09:33:02

JavaScript

2022-02-13 23:33:24

設計模式Java

2022-02-18 17:21:29

適配器模式客戶端

2024-07-31 10:41:16

C#設計模式

2024-02-22 12:13:49

適配器模式代碼

2021-08-16 17:15:19

設計模式Android適配器模式

2013-02-26 10:55:47

C#適配器設計模式

2012-08-02 10:46:34

JavaAdapter模式

2024-04-10 12:27:43

Python設計模式開發(fā)

2022-12-12 09:20:59

適配器模式接口

2009-11-18 18:08:20

PHP適配器模式

2022-05-29 22:55:00

適配器設計模式

2023-08-15 11:07:37

適配器模式TypeScript

2021-02-16 08:16:09

適配器模式MybatisJava

2014-07-17 10:55:10

Win8.1應用開發(fā)適配器模式

2023-09-06 13:20:00

適配器模式兼容性

2024-12-09 09:30:00

適配器模式設計模式代碼
點贊
收藏

51CTO技術棧公眾號