Methods Smalltalk(Pharo)方法
我正在尝试学习Smalltalk(Pharo),但由于没有那么多可用的文档,我想寻求一些帮助。 我有两个班,CarRental和Car,还有一个测试班,CarRentalTest。 现在,supporse租赁服务有固定数量的汽车Methods Smalltalk(Pharo)方法,methods,smalltalk,Methods,Smalltalk,我正在尝试学习Smalltalk(Pharo),但由于没有那么多可用的文档,我想寻求一些帮助。 我有两个班,CarRental和Car,还有一个测试班,CarRentalTest。 现在,supporse租赁服务有固定数量的汽车 | carRental | carRental := CarRental new. carRental addCar: Car panda; addCar: Car panda; addCar: Car tesla. self assert: c
| carRental |
carRental := CarRental new.
carRental
addCar: Car panda;
addCar: Car panda;
addCar: Car tesla.
self assert: carRental totalCars size = 3
但是,我的addCar方法是红色的,我如何修复它?pharo有很多可用的文档: 以下是一些提示:
- (我建议从“以身作则的法罗”开始)
- 这个优秀的列表:(基于Pharo的旧版本,但一切都适用)
现在,关于你的问题,很难找到答案,这取决于很多事情,例如:容器是集合还是OrderedCollection<代码>汽车熊猫回答什么?Car的新实例或始终相同?pharo有大量可用文档: 以下是一些提示:
- (我建议从“以身作则的法罗”开始)
- 这个优秀的列表:(基于Pharo的旧版本,但一切都适用)
现在,关于你的问题,很难找到答案,这取决于很多事情,例如:容器是集合还是OrderedCollection<代码>汽车熊猫回答什么?Car的新实例还是始终相同?您的方法
addCar:
是红色的(请注意结尾的冒号),因为您尚未定义它。让我们把它写下来:
类CarRental
必须有一个实例变量,该变量将保存其所有汽车。让我们把它命名为汽车
在initialize
方法(实例端)中,我们需要执行以下操作
CarRental >> initialize
super initialize.
cars := OrderedCollection new.
现在,如果我们创建CarRental
的新实例,它的cars
ivar中将有一个空的OrderedCollection
现在我们可以像这样添加addCar:
方法
CarRental >> addCar: aCar
cars add: aCar
CarRental >> totalCars
^cars size
最后,确保你有这样的东西
CarRental >> addCar: aCar
cars add: aCar
CarRental >> totalCars
^cars size
检查您的代码并继续尝试 您的方法
addCar:
是红色的(注意末尾的冒号),因为您尚未定义它。让我们把它写下来:
类CarRental
必须有一个实例变量,该变量将保存其所有汽车。让我们把它命名为汽车
在initialize
方法(实例端)中,我们需要执行以下操作
CarRental >> initialize
super initialize.
cars := OrderedCollection new.
现在,如果我们创建CarRental
的新实例,它的cars
ivar中将有一个空的OrderedCollection
现在我们可以像这样添加addCar:
方法
CarRental >> addCar: aCar
cars add: aCar
CarRental >> totalCars
^cars size
最后,确保你有这样的东西
CarRental >> addCar: aCar
cars add: aCar
CarRental >> totalCars
^cars size
检查您的代码并继续尝试 你是说方法名“addCar:”在你引用的方法中是红色的吗?如果我没有弄错的话,这将表明在任何类中都没有这样的方法。因此,请同时发布该方法的定义。你是说你引用的方法中的方法名“addCar:”是红色的吗?如果我没有弄错的话,这将表明在任何类中都没有这样的方法。因此,请同时发布该方法的定义。非常感谢您的详细解释!这很有帮助!非常感谢您的详细解释!这很有帮助!感谢您提供的资源,我正在使用这些书籍/教程,但是当您查找纯oop时会感到困惑。感谢您提供的资源,我正在使用这些书籍/教程,但是当您查找纯oop时会感到困惑