У меня есть основной файл, и вы хотите извлечь из него некоторый код и перенести его в другой, однако он не работает с экземплярами. Например:Как получить доступ к методам класса из другого файла
require "selenium-webdriver"
require "./out.rb"
driver = Selenium::WebDriver.for :firefox
driver.navigate.to "http://www.google.com"
hello
save
out.rb является:
def save
driver.save_screenshot('screenshot.png')
end
def hello
puts "hello"
end
hello
in `<main>': undefined local variable or method `save' for main:Object(NameError)
Как получить доступ к методам класса из другого файла?
Спасибо. Можете ли вы также опубликовать хороший учебник для глубокого понимания классов. –
«Написание методов в глобальной области определяет их на объекте, называемом main». - Нет, они становятся «частными» методами экземпляра 'Object', а не singleton-методами' main' (кроме IRb, где они становятся «обычными» методами экземпляра 'Object'). –
Спасибо, что поняли, что, @ JörgWMittag, я обновлю свой ответ. – Jesper