Java中使用processMouseEvent方法经常加上super.processMouseEvent(e);有什么作用?
Java中使用processMouseEvent方法经常加上super.processMouseEvent(e);来调用父类的processMouseEvent(),这用...
Java中使用processMouseEvent方法经常加上super.processMouseEvent(e);来调用父类的processMouseEvent(),这用有什么作用呢?
比如:
protected void processMouseEvent(MouseEvent e) {
if(e.getID() == MouseEvent.MOUSE_PRESSED) {
bStart = true;
startTime = endTime = System.currentTimeMillis();
repaint();
new Thread(this).start();
} else if(e.getID() == MouseEvent.MOUSE_RELEASED) {
bStart = false;
repaint();
}
super.processMouseEvent(e); //这句有什么意义?
} 展开
比如:
protected void processMouseEvent(MouseEvent e) {
if(e.getID() == MouseEvent.MOUSE_PRESSED) {
bStart = true;
startTime = endTime = System.currentTimeMillis();
repaint();
new Thread(this).start();
} else if(e.getID() == MouseEvent.MOUSE_RELEASED) {
bStart = false;
repaint();
}
super.processMouseEvent(e); //这句有什么意义?
} 展开
1个回答
展开全部
子类复写了processMouseEvent这个方法,下面有一个判断的语句,当判断成功之后就执行判断后要执行的语句,如果判断都没有成功就执行父类的这个方法:super.processMouseEvent(e);——————》执行父类的这个方法
追问
这个子类的父类是Canvas,这里执行下Canvas的processMouseEvent(e)有什么意义呢?我把这句删了,程序也能正常执行啊,不太懂。Canvasde1processMouseEvent(e)难道不是空的吗?谢谢回答
追答
这个里面就有一个接口的思想在里面,我们在开发中只向别人提供接口,就可以实现我们的方法了,这就是面向对象里面的面向接口的编程,在开发中都要考虑这个问题,是不同层次实现解耦
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询