0

インターフェイスを実装するJavaクラスがあり、このクラスには文字列値を取るコンストラクターがあり、すべてのメソッドは、クラスが作業を得るためにその値に依存しているため、対処したい場合はどうすればよいですかインターフェイスに直接アクセスし、そこからメソッドにアクセスします。ご存知のように、インターフェイスにはコンストラクターを含めることができないため、そこからその文字列値を割り当てることはできません。

クラス:

public class XmlSource implements XmlInterface{

    XmlConf xconf = new XmlConf();
    URLProcess urlp = new URLProcess();
    private URL url;
    private String surl;

    public XmlSource(String surl) throws MalformedURLException {

        this.surl = surl;
        result = urlp.validate(surl);
        if(result == true){
            configure();
        }

    }

    public boolean configure() throws MalformedURLException {

            url = new URL(surl);
            xconf.setUrl(url);
            xconf.setParameters(urlp.parameters);
            xconf.setUrlPath(urlp.path);
            xconf.setHostName(urlp.hostName);
            return result;

    }

    public Document load() throws IOException, ParserConfigurationException,
            SAXException {

        // encoding the URL
        InputStream is = url.openStream();

        // loading the XML
        domFactory = DocumentBuilderFactory.newInstance();
        domFactory.setNamespaceAware(true);
        builder = domFactory.newDocumentBuilder();
        doc = builder.parse(is);

        return doc;

        }
}

インターフェース:

public interface XmlInterface {

    public boolean configure() throws Exception;
    public Document load() throws Exception;
}
4

1 に答える 1