以下是我创建的对象上的两种方法。超类实现了MouseListener。只有在调用System.out.println时才会调用Java重写方法
@Override public void mousePressed(MouseEvent event){
mIsPushed = true;
System.out.println("Button pushed");
}
@Override public void mouseReleased(MouseEvent event){
mIsPushed = false;
System.out.println("Button released");
}
当两个System.out.println
调用是注释掉,程序工作正常,表现为它应该。当他们不是时,它什么也不做。我甚至在mIsPushed
任务中放置了断点,并且他们从未达到。
但是,如果我在调用这两个函数的位置放置了一个断点,则调试器会触及它并进行调用。
谁能告诉我我错过了什么?
请给一个简短而完整的程序演示问题。我怀疑你正在做一些狡猾的事情,比如试图从多个线程使用共享变量而没有过时值的保护,但是我们不能说没有看到更多的代码。 –
这也是我的选择,因为印刷声明基本上是所有其他方面都没有的。 – aioobe