說明spa
1.編寫代理和真實業務都能使用的接口代理
2.在代理中聚合真實業務,對外不暴露真實業務,並可在代理中對真實業務以前和以後作一些操做code
public interface ISubject { void Request(); } class ProxyRealSubject : ISubject { RealSubject realSubject; public void Request() { if(realSubject==null) { realSubject = new RealSubject(); } Console.WriteLine("執行RealSubject前的操做"); realSubject.Request(); Console.WriteLine("執行RealSubject後的操做"); } } class RealSubject : ISubject { public void Request() { Console.WriteLine("執行RealSubject完成"); } } ISubject iSubject = new ProxyRealSubject(); iSubject.Request();