Animal は Cat クラスの親クラスです。
public static void main (String[] args)
{
Animal myCat1 = new Cat; //Allocation 1
Cat myCat2 = new Cat; //Allocation 2
}
2つの割り当ての違いは何ですか??それぞれが本当ですよね?
Animal は Cat クラスの親クラスです。
public static void main (String[] args)
{
Animal myCat1 = new Cat; //Allocation 1
Cat myCat2 = new Cat; //Allocation 2
}
2つの割り当ての違いは何ですか??それぞれが本当ですよね?
Animal myCat1 = new Cat();
これはpolymorphism
、スーパー クラス参照がサブクラス オブジェクトを保持できる場所で呼び出されます。
Java チュートリアルを読む:ポリモーフィズム
これらはどちらも有効ではありません。が必要()
です。それとは別に:
までの任意のスーパークラスによって任意のオブジェクトを参照できますObject
。これがポリモーフィズムです。
あなたの質問に答えるには: 違いはありません。どちらの場合も、'new Cat ()' は Cat クラスのインスタンスを割り当てます。どちらも真です。myCat1 は動物 (実際には猫) であり、myCat2 は猫です。