: ParentObj A = new ChildObj(); ((ChildObj) A).childMethod();
オブジェクトをキャストするオブジェクト指向プログラミングで、スーパークラスとサブクラスを変数にインスタンス化するのはなぜですか?例えばのために
私はそれだけでChildObj A = new ChildObj()
としての代わりの作成のスターターとして親オブジェクトを使用してChildObjを宣言するために容易になるだろう、オブジェクト指向プログラミングでは、このような事例の多くを参照してくださいオブジェクト?
オブジェクト指向プログラミングに対して、この例の使用例はどのようになりますか?
また、Aオブジェクトはこの宣言またはParentObjのChildObjになりますか?
このようにしたり、ユースケースベースのものがあれば、パフォーマンスの向上がありますか?
ありがとうございます。
[インターフェイスへのプログラムとはどういう意味ですか?](http://stackoverflow.com/questions/383947/what-does-it-mean-to-program-to-an-interface) – khelwood
あなたが見ていることは良い例ではありません。誰かが明確に考えていないことの結果です。それをChildObjとして宣言する方が良いでしょう。 –
ありがとう、私はdoable、なぜ私は尋ねたが、これはたくさんのことに不思議です。また、インターフェイスについて知っているが、それは意味をなさないだろうが、宣言に一般的な意味を持つ具体的なクラスは避けているようだ。子クラスの配列をループするために使用できますか?最初に親クラスとして宣言するのが簡単で、後でキャストすることで何かを行うだけですか? mmmm – Chopnut