无法将 JCheckBoxMenuItem 添加到 Menu

JCheckBoxMenuItem cannot be added to Menu

JCheckBoxMenuItem 的 src 代码具有以下 class 头部:

public class CheckboxMenuItem extends MenuItem implements ItemSelectable, Accessible

所以当一个 class 扩展另一个时,这意味着它也应该继承它的类型。或不?

我的问题是我无法将 JCheckBoxMenuItem 添加到 JMenu(需要添加 MenuItem)。

以下代码对我不起作用:

private void initMenu()
{
    menuBar = new JMenuBar();
    setJMenuBar(menuBar);

    mnFile = new JMenu("File");
    menuBar.add(mnFile);

    mnAudio = new JMenu("Audio");
    menuBar.add(mnAudio);

    mnitmQuit = new JMenuItem("Quit");
    mnFile.add(mnitmQuit);


    rmnitmNoice = new CheckboxMenuItem("Noice");
    // Eclipse gives error Message below *
    mnAudio.add(rmnitmNoice);

    rmnitmNuke = new JRadioButtonMenuItem("Nuke");
    // Same here
    mnAudio.add(rmnitmNuke);
}

The method add(JMenuItem) in the type JMenu is not applicable for the arguments (CheckboxMenuItem)

我很确定我以前用过这个并且没有问题。但是自从我开始使用 Marven 后,我有时会出现奇怪的行为(其他示例:@Override 不再适用于实现接口的方法)

有人有同样的问题或解决方案吗?

正如 VGR 在他的评论中解释的那样:错误是试图添加 CheckboxMenuItem 而不是 JCheckBoxMenuItem。