0

B extends A宣言があるとします スーパークラス変数A a=new B();によるサブクラスオブジェクトの参照の使用は何ですか?そして、オブジェクトによってアクセス可能なフィールドとメソッドは何ですか a((子クラスのメソッドと変数のみ) または (子クラスと親クラスの両方から) )?

ありがとう

4

4 に答える 4

1

その理由は抽象化です。アイデアは、オブジェクトに関するすべての小さな詳細を知る必要がないということです。たとえば、あなたが車を運転しているとします。ほとんどの場合、右側のペダルで加速し、左側のペダルで減速し、前方にある大きな丸いもので車を操縦します。それがどのように起こるかは、ドライバー (別名ユーザー) が知ることは重要ではありませんが、車が実際に動くためには、これらの詳細が適切に機能することが非常に重要です。

于 2013-04-01T12:37:59.520 に答える
0

したがって、これは主に達成することPolymorphismですAbstraction

主な原則は、より高いラベルのインターフェイスに対するクライアントのコーディングであり、低レベルの実装について心配する必要はありません。

これにより、クライアントを変更せずに実装を柔軟に変更できます。また、クライアントには、複数の実装を試す柔軟性があります。

あなたの例では、アクセス可能なメンバーは、クラスaによって定義されたメンバーです。A

于 2013-04-01T12:43:17.667 に答える