2014-03-05 24 views
-1

我是新手。我有下一個代碼,我不知道我在調用哪個構造函數?我打電話給哪個構造函數?

ClassName object = getobjectInfo() 

在類名類有下一個構造函數

public ClassName(int a) 
{ 
//whatever 
} 

public ClassName(double a) 
{ 
//whatever 
} 

public ClassName(int a, double b, string c) 
{ 
//whatever 
} 

我明白了什麼是:

  1. 我創建ClassName類的對象,調用任何構造函數。哪一個?
  2. 然後我打電話給getobjectInfo()方法。

我在打電話給哪個構造函數?

+9

你不會打電話給任何人。 – Maroun

+1

熟悉調試器。 –

+1

方法'getobjectInfo()'是我們所不知道的。 –

回答

1

我們不知道你是否在調用構造函數。請看下面的代碼:

public ClassName getobject() { 
    return null; 
} 

這顯然不實例ClassName可言。而不是:

public ClassName getobject() { 
    return new ClassName(1); // Now you are calling a constructor. 
} 

我們不知道你getobject方法做。

+0

好的!是的,我的getobjectinfo()方法正在調用一個構造函數(第三個),但剛看完後,如果對象的某些參數爲空。所以構造函數必須先被調用。 – user2357667

+1

沒有。你只能調用一次構造函數; Java確保這一點。也許使用一個調試器,比如內置的eclipse(也有一個手冊) –

相關問題