以下のメソッドがどのように機能するかを理解することに問題があります。 私はクラスCalcと乗法のためのメソッドを持っています。最初のメソッドは一般的なgetterを使用し、2番目のメソッドは型変換を使用してprivate属性に直接アクセスできます。私の質問は、number1がnumber2のprivate属性にアクセスできるということです。 Java Tutorialsからタイプ変換を持つメンバーへのJavaアクセス
private int number;
public Calc multiplication(Calc z)
{
return new Calc(this.number*z.getNumber());
}
public Calc multiplication(Calc z)
{
return new Calc(this.number*((Calc)z).number);
}
test()
{
number1 = new Calc(2);
number2 = new Calc(3);
number1.multiplication(number2);
}
Javaでアクセス修飾子がどのように機能するかだけです。あなたはこれがおそらく少し奇妙であるとコメントする最初の人ではありません。ところで、 'z'を' Calc'にキャストする必要はありません。すでに 'Calc'です。 –
zは既にCalcですか?((Calc)z)として型キャストを使用していますか? –
私はshenanigansを呼び出しますが、これはまったく同じシグネチャで2つのメソッドでコンパイルできません。 –