代理、监听器的理解,希望指点。

首先定义一个接口:

public interface IWork {
	public abstract void dowork();
}

 它的一个实现:

public class MyWorkImpl implements IWork {
	public void dowork() {
		System.out.println("implement work");
	}
}

 我用代理的概念:不知道理解的正确不?

public class MyWorkProxy {
	public void dowork(IWork iwork) {
		iwork.dowork();
	}
}

 我用监听器的概念:不知道理解的正确不?

public class MyWorkListener {
	IWork iwork;
	public void setWorkListener(IWork iwork) {
		this.iwork = iwork;
	}
	public void dowork() {
		iwork.dowork();
	}
}

 最后的测试:

public class Main {

	public static void main(String[] args) {
		MyWorkImpl impl = new MyWorkImpl();
		impl.dowork();

		MyWorkListener inf = new MyWorkListener();
		inf.setWorkListener(impl);
		inf.dowork();

		MyWorkProxy proxy = new MyWorkProxy();
		proxy.dowork(impl);
	}

}
 

当然,结果是这样的:

implement work
implement work
implement work

有什么差距?

主要是我理解的代理以及监听器的概念,难道这么撮?看不出来什么分别,有什么优缺点,或许概念都错了?

 

 

你可能感兴趣的:(swing)