コロナで無職になった私がエンジニアになるまで

コロナの影響で前職をクビになってから、エンジニアを目指してます。

Rubyの練習問題 ~エラーの原因~

問題.1

以下のプログラムを実行するとエラーが起きます。
①エラーが起きた原因
②正しいソースコード
をそれぞれ答えてください。

実行したプログラム
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
class Student
  def set_name(name)
    @name = name
  end

  def self.introduce
    puts "私の名前は#{@name}です。"
  end
end

student = Student.new
student.set_name("山田太郎")
student.introduce

[自分の解答]

エラーが発生した原因は定義されているintroduceがクラスメソッドになっているため。
なので、self.introduceからselfを除くだけで良い。