您的位置:首页 > 编程语言 > Java开发

设计模式——适配器模式

2014-06-18 20:58 162 查看

类适配器

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
;
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
;
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);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息