Java SAX解析:无法覆盖DefauldHandler的startElement()

Java SAX解析:无法覆盖DefauldHandler的startElement(),java,sax,Java,Sax,我正在尝试实现一个简单的SAX解析器 public class XmlParser { public parseXML(File inputFile) { SAXParserFactory factory = SAXParserFactory.newInstance(); try { SAXParser parser = factory.newSAXParser(); SaxHandler handl

我正在尝试实现一个简单的SAX解析器

public class XmlParser {
    public parseXML(File inputFile) {

        SAXParserFactory factory = SAXParserFactory.newInstance();
        try {
            SAXParser   parser = factory.newSAXParser(); 
            SaxHandler handler = new SaxHandler();
            parser.parse(inputFile, handler);
        } ....
    }

    private static class SaxHandler extends DefaultHandler {

        public void startElement(String uri, String localName, 
                             String qName, Attributes attributes) throws SAXException {
        }

        public void characters(char ch[], int start, int length) 
                             throws SAXException { 
        }  

        public void endElement(String uri, String localName,
                           String qName) throws SAXException {
        }
    }
}
问题是我似乎无法覆盖startElement方法。当我添加@Override时,将显示一条超类型消息,其中一个方法不会重写或实现一个方法。除startElement外,所有其他处理程序都被正确调用


多谢各位

我敢打赌您对Attributes类的导入不好,应该是


始终使用,它旨在保护您免受此确切问题的影响。

我打赌您对Attributes类的导入不好,应该是


始终使用,它旨在保护您免受此问题的影响。

可能您导入了错误的DefaultHandler或Attributes类

确保您已导入:

org.xml.sax.helpers.DefaultHandler
org.xml.sax.Attributes

可能您导入了错误的DefaultHandler或Attributes类

确保您已导入:

org.xml.sax.helpers.DefaultHandler
org.xml.sax.Attributes

在我看来,最简单的方法之一不是手动编写这个方法,而是使用ctrl+space,然后在Eclipse的上下文菜单中选择想要覆盖的方法。
方法将由IDE自动生成,包括注释@Override,同时将导入必要的包。

在我看来,最简单的方法之一不是手动编写此方法,而是使用ctrl+space,并从Eclipse的上下文菜单中选择想要覆盖的方法。
IDE将自动生成方法,包括annotation@Override,同时导入必要的包。

这通常意味着您的导入不正确。请在代码中包含导入。这通常意味着您的导入不正确。请在代码中包含导入。太棒了!事实上,我的java.util.jar.Attributes导入错误。实际上,我在所有处理程序方法上都使用了覆盖,只是Ecliplse和NetBeans一直在抱怨startElement上面的@Override给了我一个错误。非常感谢你!令人惊叹的事实上,我的java.util.jar.Attributes导入错误。实际上,我在所有处理程序方法上都使用了覆盖,只是Ecliplse和NetBeans一直在抱怨startElement上面的@Override给了我一个错误。非常感谢你!