机场管理系统类图
机场是一个复杂的系统,每天有成千上万的国内和国际航班在其中函数,需要适当的规划和执行才能使其成为一个管理系统。
课程:
- AirportManagement – 这个类包含机场的整体细节。
- TicketCounter - 它允许乘客购买车票并支付车票。
- 航班- 这包含机场中的所有航班详细信息。
- 雇员——雇员可以是两种类型——机场雇员和飞机雇员。这个类是两个子类的父类 – Airport Employee 和 Airplane Employee
- AirportEmployees – 这个类是Employees 的子类。它描述了在机场工作的员工。它包含他们的名称和部门,如海关、票务、食品等。
- AirplaneEmployees – 该类是 Employee 的子类,包含 Air Hostess、Pilot 等名称。它表示在飞机内工作的员工。
- 跑道- 这包含跑道详细信息,它还告诉特定跑道是否被任何航班占用。
- 乘客- 此类包含乘客详细信息。
- 公告板- 此类包含当前航班和尚未在特定日期到达和离开的航班。
- Luggage – 该类保存特定乘客的行李详细信息
属性 :
- AirportManagement – AirportName、CityName、Area
- TicketCounter – TicketId、PassengerId、来源、目的地、价格、FlightId。
- 航班– FlightId、FlightName、Capacity、StartingTime、ReachingTime、Source、Destination、Price
- 员工– EmployeeId、EmployeeName、EmployeeSalary
- AirportEmployees - 名称,部门
- AirplaneEmployees – 指定
- 跑道– RunwayNumber、FlightName、OccupiedStatus
- 乘客——PassengerId、PassengerName、PassengerAge、TicketId、LuggageId。
- 公告板– FlightId、FlightName、ArrivalTime、DepartureTime、Source Destination
- 行李– LuggageId、PassengerId、FlightId、NoOfLuggages
方法 :
1. 机场管理:
- open() - 这表明机场是否正在运行,并帮助我们启动和停止机场运行。
2.票务柜台:
- TicketDetails() - 此方法显示我们的机票和可用航班及其价格的详细信息。
- BookTicket() - 这个方法是订票
3. 飞行:
- FlightDetails() - 此方法用于显示航班的所有详细信息以及每个航班预订的机票数量。
4. 员工:
- EmployeeDetails() – 此方法用于显示员工的详细信息及其名称。
5. 跑道:
- RunwayDetails() – 此方法给出跑道长度、已预留跑道的航班以及当前在该跑道上的航班。
- isOccupied() - 它表示跑道是否被占用。
6. 乘客:
- PassengerDetails() – 此方法显示机场乘客的全部详细信息。
- Checkin() - 此方法用于办理登机手续。
7. 布告栏:
- Details() - 此方法显示机场内所有航班的详细信息,还显示已经起飞和即将到达的航班的时间和详细信息。
- FlightStatus() - 此方法显示特定航班的状态,还说明航班是否延误或即将起飞以及乘客数量。
8. 行李:
- LuggageDetails() – 此方法显示与特定乘客相关的所有行李的详细信息。
- LuggageStatus() - 此方法用于指示行李的状态,并说明是否已托运和运输。
关系 :
继承:
继承是子类从父类或基类获取资源的概念。在继承中,允许共享其属性的类称为父类,而从其父类获取属性的类称为子类。继承大大减少了再次编码的需要并允许代码可重用。
Here Employee class is the parent class, Airport employees and Airplane employees are its child classes.
协会 :
关联是一种关系,其中两个类都使用彼此及其方法。在关联中,没有一个类是另一个类的所有者,因为两个类相互使用并且仍然保留在自己的空间中。
Here association relationship exists between passengers and employees because passengers need employees and employees serve passengers, but they both exist in their own space.
聚合:
聚合是一种关系类型,其中一个类依赖于另一个类,但即使没有另一个类也可以存在。简而言之,依赖类在物理上并不包含在独立类中。
Here these three classes follow aggregation,
- Flight and passengers
- Flight and notice board
- Flight and runway
Passengers, Notice board, and runway are related to flight in some way but they can also exist without a flight and one flight can be replaced by another flight.
作品 :
组合是一种特定类拥有另一个类的关系。在组合中,依赖类不能没有独立类而存在,并且在物理上包含在独立类中。
Here passengers and luggage follow a composition relationship because luggage cannot even exist without its owner(passengers).
符号:
类图: