Один из способов может быть:
static class Program
{
public class Student
{
public int ID { get; set; }
public string Name { get; set; }
public Student(int ID, string Name)
{
this.Name = Name;
this.ID = ID;
}
}
public class Students : List<Student>
{
public void Add()
{
Console.Write("Please enter student's name: ");
string studentName = Console.ReadLine();
int studentID = base.Count + 1;
Console.WriteLine("Student ID value: {0}", studentID);
base.Add(new Student(studentID, studentName));
}
}
static void Main()
{
Students students = new Students();
students.Add();
}
}
, если вы хотите, чтобы все подарки ученика в классе ученика, вы можете определить его как статический, но это не рекомендуется.
public class Student
{
public int ID { get; set; }
public string Name { get; set; }
public Student(int ID, string Name)
{
this.Name = Name;
this.ID = ID;
}
public static List<Student> AllStudents = new List<Program.Student>();
public static void AddStudent()
{
Console.Write("Please enter student's name: ");
string studentName = Console.ReadLine();
int studentID = AllStudents.Count + 1;
Console.WriteLine("Student ID value: {0}", studentID);
AllStudents.Add(new Student(studentID, studentName));
}
}
Но в качестве примера модели ООП в реальной проблеме, список студентов может понадобиться в классе, тогда вы должны назначить всех студентов в классе.предположим, что вы можете определить классы следующим образом:
class Student
{
public int id;
public string name;
}
class ClassRoom
{
public int classId;
public string className;
public string lessonName;
public DateTime startDate, endDate;
.
.
.
public List<Student> students = new List<Student>();
}
void Main()
{
Student Adam = new Student(11, "Adam");
Student Hussein = new Student(12, "Hussein");
Student John = new Student(13, "John");
ClassRoom Class1 = new ClassRoom{classId:1, className: "Class1", lessonName="Math"};
Class1.students.Add(Adam);
Class1.students.Add(Hussein);
ClassRoom Class2 = new ClassRoom{classId:2, className: "Class2", lessonName="Physics"};
Class1.students.Add(Adam);
Class1.students.Add(John);
}
Вы можете проверить, является ли student.id
дублированным или нет, и так далее ... это не связано с концепциями ООП.