概述:對於某個物件或者一組物件,不同的訪問者,產生的結果不同,執行操作也不同
角色:
類圖:
實現:
訪問者介面:
public
inte***ce visitor
訪問者實現:
public
class
visitora
implements
visitor
public
void
visit(elementb elementb)
}
public
class
visitorb
implements
visitor
public
void
visit(elementb elementb)
}
被訪問者介面:
inte***ce element
被訪問者實現:
public
class
elementa
implements
element
public
void
method2()
}
public
class
elementb
implements
element
public
void
method2()
}
操作:
public
class context
public
void
visit(visitor visitor) }}
測試:
public
class testvisotor
}
列印:
visitora
elementa visited
visitora
elementb visited
visitora
elementa visited
visitora
elementb visited
visitorb
elementa visited
visitorb
elementb visited
visitorb
elementa visited
visitorb
elementb visited
設計模式之訪問者模式
先看一下下面這段 class person public string getaction public void setaction string action public void getconclusion else if action exciting else if action gri...
設計模式之訪問者模式
我們去銀行櫃檯辦業務,一般情況下會開幾個個人業務櫃檯的,你去其中任何乙個櫃檯辦理都是可以的。我們的訪問者模式可以很好付諸在這個場景中 對於銀行櫃檯來說,他們是不用變化的,就是說今天和明天提供個人業務的櫃檯是不需要有變化的。而我們作為訪問者,今天來銀行可能是取消費流水,明天來銀行可能是去辦理手機銀行業...
設計模式之訪問者模式
定義 表示一介作用於某個物件結構中的各元素的操作。它使你可以在不改變各元素的類的前提下定義作用於這些元素的新操作。結構圖 示例 public inte ce vistor public class concretevisitor1 implements vistor override public ...