У меня есть абстрактный класс, расширяющий Composite (AbstractWhiteBoard). Тогда у меня есть конкретный класс, расширяющий AbstractWhiteBoard. Когда я создаю конкретный класс и пытаюсь добавить его в RootPanel, программа просто прекращает выполнение. Там нет ошибки или какой-либо вывод, чтобы направить меня в файл журнала. Я понятия не имею, что происходит не так.
Вот мой абстрактный класс:
public abstract class AbstractWhiteBoard extends Composite {
/*
* FIELDS
*/
protected HorizontalPanel WhiteBoardWrapperPanel;
public AbstractWhiteBoard( ) {
WhiteBoardWrapperPanel = new HorizontalPanel();
WhiteBoardWrapperPanel.setStyleName("WhiteBoard-Wrapper");
initWidget(WhiteBoardWrapperPanel);
}
/*
* ABSTRACT PUBLIC METHODS
*/
abstract public void addNotecard( Notecard nc );
abstract public void addPostit( Postit postit );
/*
* ABSTRACT PROTECTED HELPER METHODS
*/
abstract protected void registerDragDropControllers();
}
А вот мой конкретный класс реализации:
public class ConcreteWhiteBoard extends AbstractWhiteBoard {
/*
* CONTSTRUCTORS
*/
public ConcreteWhiteBoard() {
super();
}
/*
* PUBLIC METHOD OVERRIDES
*/
@Override
public void addNotecard(Notecard nc) {
// TODO Auto-generated method stub
}
@Override
public void addPostit(Postit postit) {
// TODO Auto-generated method stub
}
/*
* PRIVATE HELPER METHOD OVERRIDES
*/
@Override
protected void registerDragDropControllers() {
// TODO Auto-generated method stub
}
}
Итак, что происходит, у меня есть этот код:
AbstractWhiteBoard wb = new ConcreteWhiteBoard();
RootPanel.get().add(wb);
Window.alert("wb added!");
Но после того как я добавил wb в RootPanel, выполнение останавливается. Предупреждение даже никогда не вызывается. Там нет ошибки, и я ничего не вижу в журнале.
Что-то не так с абстрактным классом, расширяющим Composite? Или это что-то совершенно другое, чего я просто не вижу? любая помощь с благодарностью!