Proxy Let the Proxy class take over the tasks of a specific class Have a method to delegate tasks that cannot be processed by Proxy class to a specific class Instances of a specific class will not be created until the task is delegated to a specific class </ b> </ font>
The following is described on this page -Check the structure of Proxy Pattern ·Implementation
Check with the following class structure
class | Explanation |
---|---|
sam.class | Class on behalf of Proxy |
samProxy.class | sam.Acting for class tasks |
sam.class
class sam{
void sm1(){}
void sm2(){}}
samProxy.class
class samProxy{
sam sam;
void sm1(){}
void sm2(){sam.sm2();} //Delegate the task to the sam class. Create a sam instance just before this
}
sm1 () in interface is a task that can be processed by samProxy class sm2 () in interface is a task that the samProxy class cannot handle will do
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(){ //A method that delegates tasks that cannot be processed by samProxy to sam
if(sam == null){ //Create a sam instance when you need it
sam = new sam();
sam.sm2();}
}}
user(Main.class)
public static void main(String[] args){
s s = new samProxy();
s.sm2();
}}
Recommended Posts