Posted on 2011-04-22 14:25
哈希 閱讀(125)
評論(0) 編輯 收藏 所屬分類:
設計模式
今天決定好好學習一下設計模式:代碼也敲了,談一下我個人的心得吧:
一、適配器模式:
這種模式在繼承父類的時候實現接口的情況下,實現父類的構造方法;通過該類可以實現調用接口的方法,還可以調用父類的方法,實例如下
public interface Myshape {
public void draw();
public void write();
}
public class Translator {
private String tran;
public String getTran() {
return tran;
}
public void setTran(String tran) {
this.tran = tran;
}
public Translator() {
// TODO Auto-generated constructor stub
}
}
一、 調用方法如下:
public class Test extends Text implements Myshape {
private Translator tran;
public void draw() {
// TODO Auto-generated method stub
System.out.println("實現了接口Myshape的draw()方法!");
}
public void write() {
// TODO Auto-generated method stub
System.out.println("實現了接口Myshape的write()方法?");
}
public static void main(String[] args) {
Test t=new Test();
t.draw();
t.write();
String str="沒天理!";
t.SetContent("這是我" +
str +
"設置的值" +
"你好啊!" +
"美眉!");
System.out.println(t.GetContent());
}
}
二、此方法正體現面向對象的思想,通過另一個類把對象套用在構造方法里面,由此實現適配器模式!
public class TestObject implements Myshape {
/*
* 對象
*/
private Translator tst;
public TestObject(Translator t) {
// TODO Auto-generated constructor stub
tst=t;
}
public String getTran() {
return tst.getTran();
}
public void setTran(String str) {
tst.setTran(str);
}
public void draw() {
// TODO Auto-generated method stub
System.out.println("實現1");
}
public void write() {
// TODO Auto-generated method stub
System.out.println("實現2");
}
public static void main(String[] args) {
Translator ts=new Translator();
TestObject test=new TestObject(ts);
test.setTran("好了我可以用我的秘書翻譯了!");
System.out.println(test.getTran());
}
}
自己個人理解,還望指教!