0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Ruby クラスとインスタンス2

Posted at

ターミナルで以下のように出力させるために、コーディングしていきます。

# ターミナル
著者: 太郎
タイトル: プログラミングについて
本文: プログラミングを学ぼう!
class Article

  def initialize(author, title, content)
    @author = author
    @title = title
    @content = content
  end

  def author
    @author
  end

  def title
    @title
  end

  def content
    @content
  end
end
article = Article.new("太郎", "プログラミングについて", "プログラミングを学ぼう!")

puts "著者: #{article.author}"
puts "タイトル: #{article.title}"
puts "本文: #{article.content}"

Article.newで変数articleに代入しています。
()の中に実引数。

initializeメソッド内に、インスタンス変数を宣言しています。
インスタンス変数は頭に@がつきますね。

("太郎", "プログラミングについて", "プログラミングを学ぼう!")
この3つの値が、initializeメソッドで宣言されたインスタンス変数(@author, @title, @content)に代入されます。

def author
    @author
  end

  def title
    @title
  end

  def content
    @content
  end

この部分は、インスタンス変数の値を返すための専用メソッドを定義しています。

最後のputs3行は、定義したメソッドを呼び出して、ターミナルに出力されるようになっています。

initializeメソッド

initializeメソッドとは、インスタンスが定義されたときに、そのインスタンスが自動的に実行処理を定義するインスタンスメソッドです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?