我想从父类继承一个子类。
这是我的代码。在3个单独的文件中创建了3个类。
class Transportation
#codes
end
class Plane < Transportation
#codes
end
class Boat < Transportation
#codes
end
当我运行此代码时,我收到了Boat的错误,但是当我只创建了Plane时没有问题:
uninitialized constant Transportation (NameError)
任何人都可以帮我解决这个问题吗?
由于
答案 0 :(得分:35)
除非Transportation
的定义在另一个文件中,否则此代码没有理由失败。
如果是这种情况,并且这些文件位于不同的文件中,请不要忘记在另一个文件之前要求Transportation
类的文件使用该文件。
正如您所提到的,有三种不同的文件。
您可以创建具有所需库的文件。也许它在你的bin/transport_simulator.rb
文件中。
require 'transportation'
require 'boat'
require 'plane'
现在它们将按照正确的顺序被要求,并且具有子类Transportation的文件将知道该类。