java实现静态代理

  1. import javax.sound.sampled.Port;  
  2.   
  3.   
  4. interface Person   
  5. {  
  6.     public void sayHello() ;  
  7. }  
  8.   
  9. class Student implements Person  
  10. {  
  11.     public void sayHello()  
  12.     {  
  13.         System.out.println( "学生向大家Say Hello" ) ;  
  14.     }  
  15. }  
  16.   
  17. //使用静态代理,最大的问题,代理类只能为一个接口服务,扩展性不行  
  18. class ProxyPerson implements Person  
  19. {  
  20.     private Person per ;   
  21.       
  22.     public ProxyPerson( Person per )  
  23.     {  
  24.         this.per =  per ;  
  25.     }  
  26.       
  27.     public void sayHello()   
  28.     {  
  29.         System.out.println( "Say Hello前先让校长讲两句" ) ;  
  30.         this.per.sayHello() ;  
  31.         System.out.println( "Say Hello后再让校长臭得色几句" ) ;  
  32.     }  
  33.       
  34. }  
  35.   
  36. public class Test  
  37. {  
  38.     public static void main( String[] args )  
  39.     {  
  40.         Person per = new ProxyPerson( new Student() ) ;  
  41.         per.sayHello() ;  
  42.     }  
  43. }  
posted @ 2016-11-26 17:27  天涯海角路  阅读(71)  评论(0)    收藏  举报