私はjavaで試験を準備しています。次の2つの練習を見てください(私は解決策を持っていますが、解決策は説明がありません)。誰かが私の説明を確認できれば、それは大いに感謝しています。静的および動的タイプ
1)
public interface Sale{}
public abstract class Clothing{}
public class Jacket extends Clothing implements Sale{}
public class LeatherJacket extends Jacket{}
次のうちどれ可能です。LeatherJacketはジャケットとジャケット道具販売のサブクラスであるため、
Sale var1 = new LeatherJacket();
は、可能ですか? (私はちょうどここに推測している)。
Sale var2 = new Sale();
不可能です。インターフェイスタイプのオブジェクトは作成できません。
Clothing var3 = new Clothing();
不可能です。抽象クラスのオブジェクトを作成することはできません。
Clothing var4 = new LeatherJacket();
可能ですが、なぜですか?
Jacket var5 = new LeatherJacket();
可能ですが、どうしてですか?
LeatherJacket var6 = new Object();
しかし、どうしてですか?
回答ありがとうございます。したがって、最初の1つのvar1はSale型の変数で、LeatherJacketのオブジェクトを格納します。次に、以下のことも真でなければなりません:Sale var7 = new Jacket();? – DerDieDasEhochWas
@DerDieDasEhochWasはい、あなたは両方の前提にぴったりです。それが役立つ場合は、ソリューションの横にある中空の見た目のダニをクリックすることで、あなたを最も助けてくれた**ワン**ソリューションを受け入れることができます。 – user3437460