1

次のコードを持つクラスがあります。

public class Crawler {

    String title;

    public void setTitle(String text) {
        title=text;
        //System.out.println(title);
    }

    public String getTitle() {
        // System.out.println(title);
        return title;
    }

    public void crawler() {
        Document doc;
        doc = connect("http://www.xyz.com//asd.html").timeout(0).get();
        title=doc.title();
        setTitle(title);
        System.out.println("Title : " + title);
    }
}

別のクラス:

public class Results {

    public void output() {
        Crawler cw=new Crawler();
        System.out.println(cw.getTitle());
    }
}  

問題は、結果クラスのSOPが印刷されていることですnull

のコメント付きの SOP はsetTitle()必要なテキストを出力していますが、SOPgetTitle()はまだ と言っていnullます。

ここにスコープの問題はありますか?私はそれを取得していません。setTitle()メソッドを呼び出すと、グローバル タイトル変数は変更されませんか?

これについて言及するのを忘れて申し訳ありません。以下の方法でメソッドを呼び出す以下のクラスがあります。

編集1:

public class OA {
    public static void main(String[] args) 
    {
        Crawler cw=new Crawler();
        //LoadIntoDB ld= new LoadIntoDB();
        Results op=new Results();

        cw.crawler();
        //ld.load();
        op.output();
    }
}

OA クラスを実行すると、クローラーと結果クラスのメソッドが呼び出されます。私はまだヌルになっています。

4

5 に答える 5

0

public void crawler() {ここでコンストラクターとして使用する場合は、次のように変更しますpublic crawler(){ }

于 2013-07-04T08:56:33.853 に答える