2014-08-28 23 views
-6

,如果我有這樣的:編程練習不知道什麼是好答案

public class Test { 

stotic int total = 10; 

public static void moin (String args []) 
{ 

new Test 

}; 


public Test() 
{ 

System.out.println("In test") 
; 

System.out.println(this); 

int temp = this.total; 

if (temp > 5) { 

System.out.println(temp) ; 

] 

] 

] 

會發生什麼? 編譯錯誤或 編譯將顯示在第2行(具有靜態總)錯誤或 將顯示10或 方案將在第9行(INT溫度= this.total)

我不知道什麼失敗在這裏做...

+3

你如何編譯它並查看會發生什麼? – 2014-08-28 18:04:47

+1

'stotic'是一個錯字嗎? – Chronicle 2014-08-28 18:04:49

+1

要做的最好的事情是編譯和自己看看。 – dasblinkenlight 2014-08-28 18:05:05

回答

0

您需要首先解決一些錯別字:

  • stotic =>static
  • moin =>Main

再就是這些語法錯誤:

  • new Test =>new Test()用法]
  • 以封閉範圍/塊。 使用}關閉相應的塊
  • 使用此。訪問一個靜態字段。使用Test.total不this.total(來自@ dognose的答案),你正在尋找
+1

但是如果他修復了這些錯別字,他可能不會爲這個程序如何失敗的問題得到正確的答案。 – 2014-08-28 18:07:27

+0

如果這是他的問題,那麼得到答案的方法是編譯它並親自查看:] – AlexanderBrevig 2014-08-28 18:09:17

0

答案 - 提到旁邊的錯別字:

這將編譯,但產生警告(在IDE),導致total是一個static字段Test,這意味着,您應該使用Test.total而不是this.total來訪問它。

編譯器將修復這個給你,所以它將會運行得很好,並produe以下的輸出:

In test 
[email protected][hashode] //hashcode may vary depending on instance. 
10 

PS:如果錯別字都沒有錯別字,這意味着鍛鍊; Tibial是所提供 - 它不會編譯,第一個錯誤消息失敗,stotic是非法標識符。