Proxy Lassen Sie die Proxy-Klasse die Aufgaben einer bestimmten Klasse übernehmen Verfügen Sie über eine Methode zum Delegieren von Aufgaben, die von der Proxy-Klasse nicht verarbeitet werden können, an eine bestimmte Klasse Instanzen einer bestimmten Klasse werden erst erstellt, wenn die Aufgabe an eine bestimmte Klasse delegiert wurde </ b> </ font>
Das Folgende wird auf dieser Seite beschrieben -Überprüfen Sie die Struktur des Proxy-Musters ·Implementierung
Überprüfen Sie mit der folgenden Klassenstruktur
Klasse | Erläuterung |
---|---|
sam.class | Klasse im Auftrag von Proxy |
samProxy.class | sam.Handeln für Klassenaufgaben |
sam.class
class sam{
void sm1(){}
void sm2(){}}
samProxy.class
class samProxy{
sam sam;
void sm1(){}
void sm2(){sam.sm2();} //Delegieren Sie die Aufgabe an die Sam-Klasse. Erstellen Sie kurz zuvor eine Sam-Instanz
}
sm1 () in der Schnittstelle ist eine Aufgabe, die von der samProxy-Klasse verarbeitet werden kann sm2 () in der Schnittstelle ist eine Aufgabe, die die samProxy-Klasse nicht verarbeiten kann Wird besorgt
s.interface
interface s{
void sm1();
void sm2();
}
sam.class
class sam implements s{
public void sm1(){System.out.println("sam1");}
public void sm2(){System.out.println("sam2");}
}
samProxy.class
class samProxy implements s{
sam sam;
public void sm1(){System.out.println("proxy1");}
public void sm2(){ //Eine Methode, die Aufgaben, die von samProxy nicht verarbeitet werden können, an sam delegiert
if(sam == null){ //Erstellen Sie eine Sam-Instanz, wenn Sie sie benötigen
sam = new sam();
sam.sm2();}
}}
user(Main.class)
public static void main(String[] args){
s s = new samProxy();
s.sm2();
}}
Recommended Posts