プロパティ CanFly という名前のオブジェクトにアクセスする必要がありますが、animalObj
方法がわかりません。
物件へのアクセス方法を教えてください。
でテストしましanimalObj[Owl][Bird][Animal]
たが、運がありませんでした。
クラスの構造:
動物 --> 鳥 --> フクロウ
フクロウには CanFly プロパティがあります
プロパティ CanFly という名前のオブジェクトにアクセスする必要がありますが、animalObj
方法がわかりません。
物件へのアクセス方法を教えてください。
でテストしましanimalObj[Owl][Bird][Animal]
たが、運がありませんでした。
クラスの構造:
動物 --> 鳥 --> フクロウ
フクロウには CanFly プロパティがあります
そのスクリーンショットから私が理解しているのは、あなたanimalObj
が のインスタンスでありOwl
、クラスが から継承されBird
、これが から継承されていると思いますAnimal
。
Animal
という性質がありますCanFly
。
私の推測が正しければ、次のように書くだけです。
animalObj.CanFly
CanFly
可視性を として設定したと仮定しますpublic
。
Animal
であることがわかっているインスタンスがあり、プロパティOwl
のみを持っている場合は、オブジェクトを にキャストしてプロパティにアクセスする必要があります。Owl
CanFly
Owl
(animalObj as Owl).CanFly
演算子を使用して、これAnimal
が本当に であるかどうかを確認できます。Owl
is
if (animalObj is Owl)
{
Owl owl = animalObj as Owl;
}
CanFly
さらに、問題のドメインがどのフクロウが飛ぶことができ、どのフクロウが飛ぶことができないかを具体的に扱っていない限り、 on だけのプロパティを持つことはOwl
あまり意味がありません。