gpt4 book ai didi

c#类强制至少一种关系

转载 作者:行者123 更新时间:2023-11-30 13:48:46 26 4
gpt4 key购买 nike

这应该是一个简单的问题。

假设我有一家航空公司和一个航类。一家航空公司可以有多个航类。每个航类都应与一家航空公司绑定(bind)。

如何创建类来模仿这种行为?我得出的结论如下:

    public class Airline
{
private string Name;
private string Description;
private List<Flight> Flights;
public Airline(string Name, string Description)
{
this.Name = Name;
this.Description = Description;
}
public void AddFlight(Flight Flight)
{
if (!this.Flights.Contains(Flight))
{
this.Flights.Add(Flight);
}
}
public void RemoveFlight(Flight Flight)
{
this.Flights.Remove(Flight);
}
}

public class Flight
{
private string No;
private string Time;
private Airline Airline;

public Flight(Airline Airline, string No, string Time)
{
this.No = No;
this.Time = Time;
this.Airline = Airline;
}
}

有没有更好的方法来完成这项任务?我不喜欢的是,当我创建一个航类时,我必须向它添加一家航空公司,然后我必须调用 Airline.AddFlight 才能将它与我的航空公司相关联。此外,我正在查看代码是否还有其他问题或任何可以改进的地方。

最佳答案

为什么不在构建时将航类添加到航空公司:

    public Flight(Airline Airline, string No, string Time)
{
this.No = No;
this.Time = Time;
this.Airline = Airline;
Airline.AddFlight(this);
}

?

关于c#类强制至少一种关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11437518/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com