2017-02-15 4 views
-3

Мне нужно создать классы Course, Teacher, Student и т. Д. В задании также было предложено «инкапсулировать» данные. Сложная часть состоит в том, что класс Course должен содержать массив из трех объектов-учеников, и я действительно не знаю, как это сделать.Как создать массив студенческих объектов в классе курса в C#

Это часть кода (ов), который у меня есть.

//Creating a Teacher class 
using System; 
namespace Homework_5 
{ 
    class Teacher 
    { 
     private string _firstName; 
     public string FirstName 
     { 
      get { return _firstName; } 
      set { _firstName = value; } 
     } 
     private string _lastName; 
     public string LastName 
     { 
      get { return _lastName; } 
      set { _lastName = value; } 
     } 
    } 
} 


//Creating a Course class 
using System; 
namespace Homework_5 
{ 
    class Course 
    { 
     private string _name; 
     public string Name 
     { 
      get { return _name; } 
      set { _name = value; } 
     } 
     private int _credits; 
     public int Credits 
     { 
      get { return _credits; } 
      set { _credits = value; } 
     } 
     private string _durationInWeeks; 
     public string DurationInWeeks 
     { 
      get { return _durationInWeeks; } 
      set { _durationInWeeks = value; } 
     } 
     //private Teacher array of 3. <--- I DON'T KNOW HOW TO DECLARE THIS 
    } 
} 

Три Teacher объекты создаются экземпляры в main, наряду с Course объекта. Объекты Teacher должны быть переданы объекту Course.

+1

Что именно вам нужно знать? Как объявить [Массив] (https://msdn.microsoft.com/en-us/library/9b9dty7d.aspx)? Или что-то другое? – vesan

+0

Сначала вам нужно будет реализовать свой класс Student и закодировать его атрибуты. Затем вы можете создать массив и инициализировать его соответствующими данными. – Smitty

ответ

1
private Teacher[] teachers = new Teacher[3]; 

Хотя я читал ваш код, а не текст. Я не вижу вашего студенческого класса. Также, как правило, использование Array's не является идеальной коллекцией, поскольку они фиксированной ширины и громоздки, чтобы переопределить количество элементов. Список - гораздо более распространенная структура.

+0

Как я должен инкапсулировать массив, чтобы сделать его доступным для основного с помощью accessors (get и set). У меня проблемы с этим конкретно ... –

+0

Ну, самый простой способ - разоблачить его, как и другие ваши свойства. Однако это позволяет потребителям изменять ширину массива. Вы можете посмотреть в IEnumerable , но это также имеет последствия. –