Smalltalk 法罗的方法

Smalltalk 法罗的方法,smalltalk,pharo,Smalltalk,Pharo,我还在学法罗,但有点困惑。有两类,CarRental和Car,以及Test类,CarRentalTest 有固定数量的车,同一辆车不能租两次,我有代码,但有一个错误 | carRental redPanda yellowPanda blackTesla | carRental := CarRental new. redPanda := Car panda. yellowPanda := Car panda. blackTesla := Car tesla.

我还在学法罗,但有点困惑。有两类,
CarRental
Car
,以及
Test
类,
CarRentalTest

有固定数量的车,同一辆车不能租两次,我有代码,但有一个错误

| carRental redPanda yellowPanda blackTesla |
    carRental := CarRental new.
    redPanda := Car panda.
    yellowPanda := Car panda.
    blackTesla := Car tesla.
    carRental
        addCar: redPanda;
        addCar: yellowPanda;
        addCar: blackTesla.
    self assert: carRental availableCars size equals: 3.
    carRental rent: redPanda days: 5.
    self assert: carRental availableCars size equals: 2.
    self assert: carRental rentedCars size equals: 1

我试图初始化
可用卡
租用卡
方法,但仍然存在问题。

您需要跟踪租用的汽车,对吗?要执行此操作,请将ivar
rendered
添加到
CarRental
类,并将其初始化为空集合:

rented := OrderedCollection new.
rent: aCar
  rented add: aCar
(换句话说,在
#initialize
方法-实例端包含上面的行。)

现在,每次租车时,都将其添加到
rented
集合中:

rented := OrderedCollection new.
rent: aCar
  rented add: aCar
当车还回来的时候

return: aCar
  rented remove: aCar
您还可以添加到目前为止缺少的getter方法

rentedCars
  ^rented
并将可供出租的汽车计算为

availableCars
  ^cars copyWithoutAll: rented

请描述“问题”。当我尝试编译代码时,我遇到了“消息可用Cars&rentedCards已发送但未实现”的问题