It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center




已关闭8年。




设计一个OO parking 场。它将具有哪些类和功能。应该说满了,空了,还可以找到代客 parking 的地方。该 parking 场有3种不同类型的 parking 位:常规,残疾人和紧凑型。

谢谢!

最佳答案

这是使齿轮转动的快速入门...

ParkingLot是一类。

ParkingSpace是一类。

ParkingSpace有一个入口。

入口有一个位置,或更确切地说,是与入口的距离。

ParkingLotSign是一个类。

ParkingLot有一个ParkingLotSign。

ParkingLot具有有限数量的ParkingSpaces。

HandicappedParkingSpace是ParkingSpace的子类。

RegularParkingSpace是ParkingSpace的子类。

CompactParkingSpace是ParkingSpace的子类。

ParkingLot会保留一系列的ParkingSpaces,以及一个单独的闲置的ParkingSpaces,它们之间的距离为其入口的距离。

通过调用.Full()、. Empty()或.Normal(),可以告诉ParkingLotSign显示“满”,“空”或“空白/正常/部分占用”。

帕克是一类。

派克可以Park()。

派克可以Unpark()。

Valet是Parker的子类,可以调用ParkingLot.FindVacantSpaceNearestEntrance(),该函数返回ParkingSpace。

帕克有一个ParkingSpace。

派克可以调用ParkingSpace.Take()和ParkingSpace.Vacate()。

派克会调用Entrance.Entering()和Entrance.Exiting(),ParkingSpace会在有人拿走或腾空它时通知ParkingLot,以便ParkingLot可以确定它是否已满。如果是新装满或新装满或新装不满或装满,则应更改ParkingLotSign.Full()或ParkingLotSign.Empty()或ParkingLotSign.Normal()。

HandicappedParker可以是Parker的子类,CompactParker可以是Parker的子类,RegularParker可以是Parker的子类。 (实际上可能是过大了。)

在此解决方案中,Parker有可能应重命名为Car。

09-25 19:40