2012-01-09 5 views
0

可能性の重複:コンパイラは、このような役割を果たしなぜ
Understanding which constructor is chosen and whyJavaのオーバーロードコンストラクタ

は、

public class Calculator{ 

    private Calculator(Object o) { 
     // code goes here 
    } 

    private Calculator(double[] calc) { 
     // code goes here 
    } 

    public static void main(String[] args) { 
     new Calculator(null); 
    } 
} 

このプログラムは、第二のコンストラクタを実行します。なぜ最初にコンストラクタが実行されないのですか?

答えて

2

どちらのコンストラクタもアクセス可能で適用可能です。

コンストラクタCalculator(Object)は、Calculator(double [])に渡されるパラメータを受け入れます。したがって、Calculator(Object)はあまり具体的ではありません。

関連する問題