don*_*ner 4 java oop design-patterns
我知道将常量放在界面中通常被认为是不好的做法,但......
我正在使用Observer模式将事件从对象广播到侦听器.
interface DownloadListener
{
public void sendEvent(int eventId);
}
Run Code Online (Sandbox Code Playgroud)
广播公司使用常量int来告诉听众哪个事件发生了.
class DownloadTask
{
public static final int EVENT_DOWNLOAD_STARTED = 1;
public static final int EVENT_DOWNLOAD_COMPLETED = 2; //should these go here?
DownloadTask(DownloadListener listener)
{
listener.sendEvent(EVENT_DOWNLOAD_STARTED);
}
}
Run Code Online (Sandbox Code Playgroud)
将常量放在界面中会更好吗?我的想法是接口是广播公司和听众之间的契约,因此它应该包含该合同的细节(常量).
我正在开发移动设备(Java 1.3),所以很遗憾不能使用枚举类型.