當我運行這段代碼我得到線int length = origin.length();
用簡單的代碼奇怪的錯誤
的NullPointerException異常。如果我在它採空在同一行,但在變量選項卡中的origin
值,因爲它可能是調試模式下運行即來自主要方法的值。
那麼爲什麼在運行時出現NullPointerException?
public static void main(String[] args) {
String regexp = "(?:a)";
Task t = new Task(regexp); // error
t.process();
}
class Task {
private String origin;
public Task() {
}
public Task(String origin) {
this.origin = origin;
}
public void setOrigin(String origin) {
this.origin = origin;
}
public String getOrigin() {
return origin;
}
int length = origin.length(); //NullPointerException
...
提示:http://stackoverflow.com//questions/218384/what-is-a-nullpointerexception-and-how-do-i-fix-it – Jens
嘗試移動該行的構造函數內 – depperm