//接口
package proxy;
public interface Image {
public void show();
}
//-----------------下面是2个实现类--------------------------------
//真正的 实现类 BigImage
package proxy;
public class BigImage implements Image {
public BigImage(){
try{
Thread.sleep(3000);
System.out.println("实例化……");
}catch(Exception e){
e.printStackTrace();
}
}
public void show() {
System.out.println("启动show方法");
}
}
//代理类
package proxy;
public class ImageProxy implements Image {
private Image image;
public ImageProxy(){
this.image = null;
}
public void show() {
if(image == null){
image = new BigImage();
}
image.show();
}
}
//--------------------------------------测试类----------------------------
package proxy;
public class ImageProxy implements Image {
private Image image;
public ImageProxy(){
this.image = null;
}
public void show() {
if(image == null){
image = new BigImage();
}
image.show();
}
}