c#如何通过父类的对象访问嵌套类的方法

本文关键字:嵌套 方法 访问 对象 何通过 父类 | 更新日期: 2023-09-27 17:50:25

public class City
{
  public class Population
  {
    public int number;
    public void change(int amount)
    {
      number = amount;
    }
  public class Buildings
  {...}
  public class Military
  {...}
}

假设在另一个类中,有

public City[] PlayerCities = new City[6];

如果我尝试做像PlayerCities[0].Population.Change(4)这样的事情,它不起作用。

PS:我是一个初学者,我想不出其他的实现-这就是为什么我使用嵌套类-它似乎对我有意义

c#如何通过父类的对象访问嵌套类的方法

需要先创建Population对象,然后才能访问它的方法。另一种方法是将Change设置为静态变量(这在您的情况下没有意义,但很重要)。

在下面的代码中,我在City

中创建了Population的auto属性
public class City
{
  public Population Population {get; set;}
  public class Population
  {
    public int number;
    public void change(int amount)
    {
      number = amount;
    }
  public class Buildings
  {...}
  public class Military
  {...}
}

添加后,可以添加PlayerCities[0].Population.Change(4)