我正在研究Java事件管理器,並且我想向它添加新的未來。 它是自定義類選擇或自定義匹配類系統。抽象類中的同步
EventManager eventManager = new EventManager();
方式如何將新的類選擇設置爲事件管理器:
eventManager.setClassSelector(Class<? extends ClassSelector> classSelector);
eventManager.setClassSelector(ClassSelector classSelector);
這種方法使用類選擇:
eventManager.callEvent(event);
有ClassSelector
public abstract class ClassSelector{
public List<Class<?>> classSelection(Class<?> clazz);
}
的結構方法classSelection ClassSelector必須同步,因爲callEvent正在使用具有多個線程的ThreadPool,並且只有一個ClassSelector實例。
但是同步關鍵字不是從超類繼承的。我需要建議,如何通過更改代碼或更改邏輯來解決此問題。
無關:查看您的方法命名。通常他們去動詞對象。所以'classSelection()'不是理想的... – GhostCat