Поле класса - массив объектов другого класса - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. У меня определен класс Article, в котором определен конструктор по умолчанию. Затем определяю класс Magazine, в котором одним из полей является массив объектов Article. В обоих конструкторах этого класса есть определение нулевого элемента через конструктор по-умолчанию. А также метод добавления нового объекта в массив. но при компиляции выдает ошибку System NullReferenceException (ссылка на объект не указывает на экземпляр объекта) Как правильно оформить массив объектов в поле? желательно убрать определение 0го элемента массива по умолчанию из конструктора с параметрами.
Листинг программы
  1. class Article
  2. {
  3. public Person author { get; set; }
  4. public string article_name { get; set; }
  5. public double article_rate { get; set; }
Листинг программы
  1. public Article()
  2. {
  3. author = new Person();
  4. article_name = "article";
  5. article_rate = 0;
  6. }
Листинг программы
  1. class Magazine
  2. {
  3. private string mag_name { get; set; }
  4. private Frequency mag_freq { get; set; }
  5. private DateTime mag_date { get; set; }
  6. private int mag_quant { get; set; }
  7. private Article[] mag_article{ get; set; }
  8. public Magazine(string N, Frequency F, DateTime D, int Q)
  9. {
  10. mag_name = N;
  11. mag_freq = F;
  12. mag_date = D;
  13. mag_quant = Q;
  14. mag_article[0] = new Article();
  15. }
  16. public Magazine()
  17. {
  18. mag_name = "Magazine";
  19. mag_freq = 0;
  20. mag_date = new DateTime(1990, 01, 01);
  21. mag_quant = 0;
  22. mag_article[0] = new Article();
  23. }

Решение задачи: «Поле класса - массив объектов другого класса»

textual
Листинг программы
  1. private List<Article> mag_article{ get; set; }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.933 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы