use*_*875 1 java eclipse inheritance getter-setter
我有一个类,其中包含以下代码:
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);
}
}
Run Code Online (Sandbox Code Playgroud)
另一堂课:
public class Results {
public void output() {
Crawler cw=new Crawler();
System.out.println(cw.getTitle());
}
}
Run Code Online (Sandbox Code Playgroud)
问题是,结果类中的SOP是打印的 null
评论的SOP setTitle()正在打印所需的文本,但SOP getTitle()仍然在说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();
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行OA类时,将调用crawler和results类的方法.我还是空了.
问题是,结果类中的SOP是打印null
是的,它会的.你永远不会调用这个crawler方法,这是唯一要调用的方法setTitle.也许你的意思是它是一个构造函数?如果是这样,您需要更改此声明:
public void crawler() {
Run Code Online (Sandbox Code Playgroud)
对此:
public Crawler() {
Run Code Online (Sandbox Code Playgroud)