Dieser Artikel beschreibt den statischen Proxy -Modus des Java -Designmusters. Teilen Sie es für Ihre Referenz wie folgt weiter:
Im Proxy -Modus können einige andere Operationen über Proxy an die ursprüngliche Basis angehängt werden. Der statische Proxy -Modus ist relativ einfach und erfordert kein dynamisches Proxying, wenn das Programm ausgeführt wird.
Rollen des statischen Proxy -Modus:
① Abstract -Rolle: Eine gemeinsame Schnittstelle zwischen realen Objekten und Proxy -Objekten. Was muss getan werden, um echte Objekte und Proxy -Objekte zu deklarieren.
② Wirkliche Rolle: Implementieren Sie abstrakte Rollen, definieren Sie die Geschäftslogik, die durch die wirkliche Rolle implementiert werden soll, und werden von der Proxy -Rolle bezeichnet.
③ Agentenrolle: Implementiert abstrakte Rollen, ist der Agent realer Rollen, implementiert abstrakte Methoden durch die Geschäftslogikmethoden der realen Rollen und kann ihre eigenen Operationen beibringen.
Hier ist ein einfacher Beispielcode für wartende Agenten:
1. Abstrakte Rolle : Eine gemeinsame Schnittstelle zwischen realen Objekten und Proxy -Objekten. Was muss getan werden, um echte Objekte und Proxy -Objekte zu deklarieren.
Paket com.tydic.proxy;/** * Gemeinsame Schnittstelle zwischen realen und Proxy -Rollen * @Author Administrator * */public abstract Class Betreff {// Welche realen und Proxy -Objekte müssen öffentliche abstrakte void Request ();};};};2. Wirkliche Rolle : Eine abstrakte Rolle muss implementiert werden, was ein Objekt ist, das zu vervollkommnen ist.
Paket com.tydic.proxy;/** * reale Rolle * @author Administrator * */public class RealSubject erweitert das Thema {@Override public void request () {System.out.println ("From Real Subjekt!"); }}3. Agentenrolle : Implementiert abstrakte Rollen und verweist auf eine reale Rolle.
Paket com.tydic.proxy;/** * Proxy -Rolle * @Author Administrator * */public class Proxysubject erweitert das Thema {private RealSubject RealSubject; // Die reale Rolle wird intern in interner Referenzen referenziert. neuer RealSubject (); } realSubject.request (); // Dinge, die durch die tatsächliche Rolle ausgeführt wurden. } private void postrequest () {System.out.println ("Post Anfrage!"); }}4. Schreiben Sie den Client -Code
Paket com.tydic.proxy; öffentlicher Klasse Client {public static void main (String [] args) {Subjekt betreffend = new ProxySubject (); Betreff.Request (); }}For more Java-related content, readers who are interested in this site can view the topics: "Introduction and Advanced Tutorial on Java Object-Oriented Programming", "Tutorial on Java Data Structure and Algorithm", "Summary of Java Operation DOM Node Skills", "Summary of Java File and Directory Operation Skills" and "Summary of Java Cache Operation Skills"
Ich hoffe, dieser Artikel wird für Java -Programme aller hilfreich sein.