很困惑!!求大神指導(dǎo)
public?class?Room?{ private?String?description; public?Room(String?description)?{ this.description?=?description; } public?static?void?main(String[]?args){ Room?in=new?Room("城外"); System.out.println(in); } }
輸出:Room@61de33
我想問的是:怎么讓輸出的是對象的描述,即“”城外“”!用toString也不行。
2016-10-07
public?class?Room?{
????private?String?description;
?????
????public?Room(String?description)?{
????????this.description?=?description;
????}
?????
????public?static?void?main(String[]?args){
????????Room?in=new?Room("城外");
????????System.out.println(in.description);
????}
}
???在輸入時應(yīng)該用in.description,而不是in。in是對象,是類中屬性的堆內(nèi)存的存儲地址,堆內(nèi)存的存儲地址在棧內(nèi)存中存儲。in指向的是棧內(nèi)存的地址,所以說輸出in顯示的是屬性的地址。而in.description指的是in對象的description屬性所以輸出時“城外”,另外toString是數(shù)組轉(zhuǎn)化成字符串輸出時使用的。