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 5 years have passed since last update.

本日学んだこと Ruby クラス編

Last updated at Posted at 2019-05-09

クラス・・・車の設計図(車種ごとにクラスがあると考える)
インスタンス・・・設計図から作ることができる具体的な1台1台の車(Aさんが●月に✖️で買った車など)
(ご指摘していただいたが、他に例えて考えるのはあまり良くないことらしい)

クラス → インスタンス を作成する。

class Car
 def hello
  puts "hello"
 end
end

これがクラス。
そっから、

インスタンスを作成する

car = Car.new #←〇〇.newでインスタンスを作れる。これを変数に代入。
car.hello←変数.メソッド名にすることで、呼び出せる。

newが使われた時、

def initialize←#initializeという名前のメソッドは、newが使われた時に呼ばれる特殊なメソッド。
end

initializeメソッドを呼ぶことができる。

class Car
 def initialize(name)
  @name = name
 end 
 def hello
  puts "hello"
 end
end

car = Car.new('Kitt') #←〇〇.newでインスタンスを作れる
car.hello

⑴newに引数を渡す
⑵initializeメソッドが呼ばれる
⑶変数nameに引数が渡される
⑷initializeメソッドの中で使用することができる

@name← インスタンス変数
インスタンス変数はインスタンス内であれば、どこでも使うことができる。

class Car
 def initialize(name)
  @name = name
 end
 
 def hello
  puts "Hello! I am #{@name}."
 end
end


car = Car.new('Kitt')
car.hello

これを実行すると、
Hello! I am Kitt.
が出力される。

0
0
2

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?