public class EventController extends MouseAdapter implements ActionListener {
private EventModel model;
private EventView view;
String tableClick;
Events events;
/** Constructor */
public EventController(EventModel myModel, EventView myView){
model = myModel;
view = myView;
}
public void setUpListeners() {
this.view.addEventButton.addActionListener(this);
this.view.addEventMenuItem.addActionListener(this);
this.view.editEventMenuItem.addActionListener(this);
this.view.tableEvent.addMouseListener(this);
}
@Override
public void actionPerformed(ActionEvent e){
Object button = e.getSource();
if(button==this.view.addEventButton) {
setEventDetails();
}
}
@Override
public void mouseClicked(java.awt.event.MouseEvent event) {
int rowSelected = view.tableEvent.getSelectedRow();
//blahblahblah
view.changeDisplay(events);
}
如何覆盖 KeyListener 类的方法 keyPressed
就像我对 mouseClicked
和 ActionPerformed
所做的那样 我真的不知道不想覆盖 keyTyped
和 keyReleased
,只是 keyPressed
本身。交互发生在另一个名为 VIEW 的类中
最佳答案
你不能,因为你在 Java 中仅限于单一继承。因此,您必须实现 KeyListener,并为这两个方法提供实现(什么都不做)。
更好的设计是分离职责,鼠标事件有一个类, Action 事件有一个类,键事件有第三个类。这些类可以实现为匿名内部类。
关于java - 在一个类中重写多个类的多个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14482083/