程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> test-求大神幫幫忙,搞不懂了

test-求大神幫幫忙,搞不懂了

編輯:編程綜合問答
求大神幫幫忙,搞不懂了

package test;

public class Person {
int name;
int age;

 Person(int n, int i) {
    name = n;
    age = i;

}

public static void main(String[] args) {
    Person  tom = new Person(1, 25);
    Person john = new Person(2, 27);
    System.out.println(tom);
    System.out.println(john);
}

}
輸出值test.Person@15db9742
test.Person@6d06d69c
不應該是1,25.
2,27嗎

最佳回答:


println會去調用String.valueOf(Person),
String.valueOf的源碼

 public static String valueOf(Object obj) {
   return (obj == null) ? "null" : obj.toString();
}

Person的toString是Object中的toString
源碼如下

 public String toString() {
    return getClass().getName() + "@" + Integer.toHexString(hashCode());
}

所以最終是test.Person@15db9742
想要你自己的結果,Person中重載toString方法,按照你想要的格式return輸出就行了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved