簡體   English   中英

我如何從公共無效方法中獲取字段?

[英]How can i get field from public void method?

我有方法

public String parseRootElement(InputStream xmlStream) throws SAXException {
    String name;
        try {
        DefaultHandler handler;
            handler = new DefaultHandler() {
                @Override
                public void  startElement(String uri,String localName,String qName,Attributes attributes){
                 name=qName;
                 }
                  };
            SAXParserFactory factory = SAXParserFactory.newInstance();
            SAXParser parser=factory.newSAXParser();
            parser.parse(xmlStream, handler);

            return name;
        } catch (ParserConfigurationException | IOException ex) {
            throw new IllegalStateException("ParserConfigurationException", ex);
        }
    }

如何從public void startElement()獲取qName name = qName不起作用,因為

在內部類中訪問局部變量輸入; 需要宣布為最終

有很多類似的問題,但我仍然很愚蠢。

更改String name; final String[] name = new String[1]; name=qName; name[0]=qName; return name; return name[0];

這將創建一個數組,在其中存儲結果並從中檢索結果。 通過將結果存儲在數組中,我們可以使“ name”變量成為最終變量,從而使編譯器滿意。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM