iT邦幫忙

1

Java Object類重寫toString方法顯示錯誤

  • 分享至 

  • xImage

各為先進大家好,最近在學習JAVA的基礎,在嘗試重寫Object的toString方法時都會跳出錯誤,我不太能理解編譯器提示的錯誤,是否有前輩能指導一下。 感謝


public class Object_TEST {
	public static void main(String[] args) {	
			tttt a=new tttt(100);	
			System.out.print(tttt.toString()); //提示錯誤位址		
	}
}

class tttt{
	int x;
	public tttt(int X){
		this.x=X;
	}
	public String toString() {
		return "123123"+x;
	}
	
}

提示的錯誤:
Exception in thread "main" java.lang.Error: 尚未解決的編譯問題:
無法從 Object 類型 Static 參照非 Static 方法 toString()
at Object_TEST.main(Object_TEST.java:7)

Season iT邦研究生 3 級 ‧ 2020-05-05 09:06:31 檢舉
a.toString();
Roy Li iT邦新手 5 級 ‧ 2020-05-05 13:12:23 檢舉
簡單扼要,感謝回答
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
1
theRookie
iT邦新手 1 級 ‧ 2020-05-05 09:17:34
最佳解答

變數拿錯而已,小事

public class Object_TEST {
	public static void main(String[] args) {	
			tttt a=new tttt(100);	
			System.out.print(a.toString()); //你new給了a要用a執行該物件方法	
	}
}

class tttt{
	int x;
	public tttt(int X){
		this.x=X;
	}
	public String toString() {
		return "123123"+x;
	}
	
}
Roy Li iT邦新手 5 級 ‧ 2020-05-05 13:08:34 檢舉

感謝回答,沒想到中了這種問題,學習時參考的教學直接使用類名當成實例化物件的名稱,下意識就把類名打上去,下次會更注意/images/emoticon/emoticon33.gif

0
海綿寶寶
iT邦大神 1 級 ‧ 2020-05-05 08:20:19

參考這篇說明

Roy Li iT邦新手 5 級 ‧ 2020-05-05 13:12:00 檢舉

感謝提供詳細的說明

0
lkjmn1234
iT邦新手 5 級 ‧ 2020-05-08 15:59:22

class tttt{
int x;
public tttt(int X){
this.x=X;
}
public String toString() {
return "123123"+x; //這不是javascript 最好不要直接加
}

}

我要發表回答

立即登入回答