有主類和2個示例類。一個延伸HashMap
。什麼時候返回null?
本公司主營:
public class Main {
public static void main(String[] args) {
System.out.println("Positive:");
PositiveExample positiveExample = new PositiveExample();
positiveExample.printThis();
System.out.println("Negative:");
NegativeExample negativeExample = new NegativeExample();
negativeExample.printThis();
}
}
標準之一:
public class PositiveExample {
void printThis() {
System.out.println(this);
System.out.println(this == null);
}
}
和基於HashMap的一個。
import java.util.HashMap;
public class NegativeExample extends HashMap {
void printThis() {
System.out.println(this);
System.out.println(this == null);
}
}
現在看看控制檯輸出:
正:
PositiveExample @ 2a139a55
假
負:
{}
假
而且注意空虛{}
。與標準類輸出中的[email protected]
相反。
基於HashMap
的輸出類說this
不是null
,但這就是它的行爲方式,不是。檢查一下你自己。
我對Java構建1.8.0_60-B27,Ubuntu的14.04 64位。
當您沒有發佈任何代碼時很難解決。 – Tunaki
如果沒有您發佈的相關代碼,我不確定您希望我們如何理解您的問題或您的代碼。請通過[遊覽],[幫助]和[如何提出一個很好的問題](http://stackoverflow.com/help/how-to-ask)部分來查看本網站的工作原理並幫助您改善您當前和未來的問題,這可以幫助您獲得更好的答案。 –
那麼,這個問題並不需要比我已經發布的更多的代碼,以我的理解。問題是爲什麼這返回null。簡單。它不應該,對吧? – Tomasz