例如:package?k;
public?class?Animal?{
public?int?age=10;
public?Animal(){
System.out.println("animal?class?is?running");
}
}package?k;
public?class?Dog?extends?Animal?{
public?Dog(){
System.out.println("dog?class?is?running");
}
}package?k;
public?class?HelloWorld?{
public?static?void?main(String[]?args){
Dog?dog=new?Dog();
System.out.println(dog);
}
}結果:animal?class?is?running
dog?class?is?running
k.Dog@1db9742打印dog對象時有那么多方法不用,為什么只打印了toString()
4 回答
已采納

Raelovejava
TA貢獻10條經驗 獲得超6個贊
不明白你問的是什么…toString方法是Object類的方法,所有類都從Object類繼承。在參數是一個對象時,會首先調用該對象的toString方法

KevinHY
TA貢獻4條經驗 獲得超3個贊
Java中輸出一個類的對象的時候,會調用這個Object類的toString()方法。自己寫的類沒有覆蓋這個方法的話就是繼承Object類的這個方法,Object中toString()方法的實現是這樣的:getClass().getName() + "@" + Integer.toHexString(hashCode())。后面跟的是這個類的哈希碼值,如果希望這個類打印出你希望的格式,你就要覆蓋toString方法,按照你自己想要的格式對toString()方法進行重寫。

大咪
TA貢獻785條經驗 獲得超332個贊
打印對象我記得好像只能用toString方法吧- -,你這段程序的目的在于告訴你,如果打印輸出子類,先運行的會是父類,然后再運行子類結果。。至于你說的那個我沒太懂- -。。
添加回答
舉報
0/150
提交
取消