Ala*_*ter 1 java interface implements
为什么必须覆盖接口的所有方法?
例如,如果我有
public class Foo extend JFrame implements ActionListener, KeyListener {
foo(){
}
@Override
public void keyPressed(KeyEvent arg) {
}
@Override
public void keyReleased(KeyEvent arg) {
}
@Override
public void keyTyped(KeyEvent arg) {
}
}
Run Code Online (Sandbox Code Playgroud)
我将有很多我甚至不会使用的方法,有没有办法删除未使用的已实现的方法,例如,如果我打算从接口使用一个方法
我也不想使用抽象,因为这意味着我无法创建对象的实例(至少我的编译器是这样说的)
具体类必须始终实现接口的所有方法.如果你还没有扩展,JFrame
你可以扩展KeyAdapter
.它实现了空方法,KeyListener
以避免将它们写出来.您可以在类中使用匿名类,Foo
如下所示:
addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
// handle typed key here
}
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1026 次 |
最近记录: |