2022-02-20 18:22:06 +01:00
|
|
|
|
namespace Packt.Shared;
|
|
|
|
|
|
|
2022-06-21 09:56:02 +02:00
|
|
|
|
public class Passenger
|
|
|
|
|
|
{
|
|
|
|
|
|
public string? Name { get; set; }
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class BusinessClassPassenger : Passenger
|
2022-02-20 18:22:06 +01:00
|
|
|
|
{
|
|
|
|
|
|
public override string ToString()
|
|
|
|
|
|
{
|
2022-06-21 09:56:02 +02:00
|
|
|
|
return $"Business Class: {Name}";
|
2022-02-20 18:22:06 +01:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2022-06-21 09:56:02 +02:00
|
|
|
|
public class FirstClassPassenger : Passenger
|
2022-02-20 18:22:06 +01:00
|
|
|
|
{
|
|
|
|
|
|
public int AirMiles { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
public override string ToString()
|
|
|
|
|
|
{
|
2022-06-21 09:56:02 +02:00
|
|
|
|
return $"First Class with {AirMiles:N0} air miles: {Name}";
|
2022-02-20 18:22:06 +01:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2022-06-21 09:56:02 +02:00
|
|
|
|
public class CoachClassPassenger : Passenger
|
2022-02-20 18:22:06 +01:00
|
|
|
|
{
|
|
|
|
|
|
public double CarryOnKG { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
public override string ToString()
|
|
|
|
|
|
{
|
2022-06-21 09:56:02 +02:00
|
|
|
|
return $"Coach Class with {CarryOnKG:N2} KG carry on: {Name}";
|
2022-02-20 18:22:06 +01:00
|
|
|
|
}
|
|
|
|
|
|
}
|