设计模式——适配器模式

来源:互联网 发布:淘宝店铺装修教程2016 编辑:程序博客网 时间:2024/06/11 12:44

类适配器

UML图:

target接口:
public interface Target {public void numberSort(double a[]);public void numberSort(int a[]);}

adaptee类:
public class Adaptee {public void numberSort(double a[]){double temp;for(int i=0; i<a.length; i++){for(int j=i; j<a.length; j++){if(a[i] > a[j]){temp = a[i];a[i] = a[j];a[j] = temp;}}}}}

adapter类:
public class ClassAdapterSort extends Adaptee implements Target{public void numberSort(int a[]){int n = a.length;double b[] = new double[n];for(int i=0; i<n; i++){b[i] = a[i] ;}this.numberSort(b);for(int i=0; i<n; i++){a[i] =(int) b[i];}}public void numberSort(double a[]){double temp;for(int i=0; i<a.length; i++){for(int j=i; j<a.length; j++){if(a[i] > a[j]){temp = a[i];a[i] = a[j];a[j] = temp;}}}}}



对象适配器:

UML图:


target接口:
public interface Target {public void numberSort(double a[]);public void numberSort(int a[]);}

adaptee类:
public class Adaptee {public void numberSort(double a[]){double temp;for(int i=0; i<a.length; i++){for(int j=i; j<a.length; j++){if(a[i] > a[j]){temp = a[i];a[i] = a[j];a[j] = temp;}}}}}

adapter类:
public class ObjectAdapterSort implements Target{private Adaptee adaptee = new Adaptee();public void numberSort(int a[]){int n = a.length;double b[] = new double[n];for(int i=0; i<n; i++){b[i] = a[i] ;}adaptee.numberSort(b);for(int i=0; i<n; i++){a[i] =(int) b[i];}}public void numberSort(double a[]){adaptee.numberSort(a);}}


0 0
原创粉丝点击