Java設計形式之適配器形式簡介。本站提示廣大學習愛好者:(Java設計形式之適配器形式簡介)文章只能為提供參考,不一定能成為您想要的結果。以下是Java設計形式之適配器形式簡介正文
本文舉例解釋兩種適配器形式,即類適配形式和對象適配形式,概況以下:
1.類適配形式:
舉個例子來講明:在地球時期,一切坐騎都是只能跑,不克不及飛的,而如今許多坐騎在地球都可以飛了。假定,地球時期的坐騎只能跑,而如今的坐騎不只能飛還能跑,我們可以用類適配形式來完成。
這裡須要留意的是,適配器繼續源類,完成目的接口。
示例代碼以下:
package adapter;
/**
* DOC 源
*
*/
public class Sources {
public void run() {
System.out.println("run");
}
}
package adapter;
/**
* DOC 目的接口
*
*/
public interface ITarget {
public void run();
public void fly();
}
package adapter;
/**
* DOC 繼續源類,完成目的接口,從而完成類到接口的適配
*
*/
public class Adapter extends Sources implements ITarget {
@Override
public void fly() {
System.out.println("fly");
}
}
2.對象適配形式:
假定一個適配器要適配多個對象,可以將這些對象引入到適配器裡,然後經由過程挪用這些對象的辦法便可。
完成代碼以下::
package adapter;
/**
*
* DOC 源對象,只要跑的功效
*
*/
public class Animal {
public void run() {
System.out.println("run");
}
}
package adapter;
/**
* DOC 目的接口,既能跑,又能飛
*
*/
public interface ITarget {
public void run();
public void fly();
}
package adapter;
/**
* DOC 經由過程結構函數引入了源對象,並完成了目的的辦法
*
*/
public class Adapter implements ITarget {
private Animal animal;
// private animal animal2....可以適配多個對象
public Adapter(Animal animal) {
this.animal = animal;
}
/**
* DOC 拓展接口請求的新辦法
*/
public void fly() {
System.out.println("fly");
}
/**
* DOC 應用源對象的辦法
*/
public void run() {
this.animal.run();
}
}