私の理解が正しければ、親クラスと呼ばれるものは実際には親クラスではありません。bird
これは、クラスがその親クラスから継承するという意味ではありません。そのクラス内で宣言されていることを意味します。このような:
class Program
{
private class egg { }
private static List<egg> listOfEggs;
private class bird
{
public void layEgg()
{
// How to access listOfEggs from here?
}
}
private static List<bird> listOfBirds;
static void Main(string[] args)
{
// Initialise the lists, then:
listOfBirds[0].layEgg();
}
}
もしそうなら、答えは本当に簡単です:すべてが次のようになっているにもかかわらず、listOfBirds
クラス内で完全に見えるため、直接アクセスできます:bird
private
private class bird
{
public void layEgg()
{
listOfEggs.Add(new egg()); // No problem
}
}