私はスタック オーバーフローと Ruby の両方にまったく慣れていないので、何かを正しくフォーマットしていない場合は事前にお詫びしますが、オブジェクトを介して親クラスから配列の値を呼び出したり表示したりする際に助けていただければ幸いです。
次のコードは、本 Learn Ruby the Hard Way (exercise 42) の一部として私が行っているタスク/学習ドリルです。
## Person is-a object
class Person
def initialize(name)
## class Person has-a name
@name = name
## person has-a pet of some kind
@pet = nil
end
@possessions = ['house', 'car', 'clothes', 'furniture', 'guitar']
attr_accessor :pet
attr_accessor :possessions
end
## class Employee is-a Person
class Employee < Person
def initialize(name, salary)
## set the @name attribute from class Person
super(name)
## class Employee has-a salary
@salary = salary
end
tasks = {"emails" => "Must answer all emails right away",
"reports" => "File two reports once a month",
"reimbursement" => "File expenses to get reimbursements"
}
attr_accessor :tasks
end
## Mary is-a person
mary = Person.new("Mary")
## Frank is-a Employee
frank = Employee.new("Frank", 120000)
# Study drill 4
puts mary.possessions[4]
puts frank.tasks["emails"]
以下は、スクリプトを実行したときにターミナルが返すものです (基本的には空のスペース)。
Macintosh:mystuff3 Vallish$ ruby ex42d.rb
Macintosh:mystuff3 Vallish$
構文が間違っているか、配列/ハッシュを間違って作成していると思います。これについて何か助けていただければ幸いです。
私の目的は、基本的に、クラス内の配列とハッシュから値を関連オブジェクトに渡してから、それらの値を呼び出すことです。
前もって感謝します!