Rubyのオブジェクト
オブジェクトとは、データと手続きをまとめたもの。
Rubyではクラス名は必ず大文字で始めるルールがある。
参照
「=」は左辺に「右辺の値への参照(オブジェクトリファレンス)」を代入する。
つまり、左辺に右辺の値を参照させる。
str2 = "hello!"
str1 = str2
とすると、str1は"hello!"という文字列が格納されるのではなく、str2と同じインスタンスを参照することになる。
# -*- coding: UTF-8 -*- str2 = "hello!" str1 = str2 puts str1 #hello! str1.upcase! puts str2 #"HELLO"
@nameのように「@をつけるとインスタンス変数を定義できる。
attr_reader
attr_writer
attr_accessor
はアクセサメソッドといい、セッターやゲッターのような働きをする。
以下のサンプルを実行してみる。
# -*- coding: UTF-8 -*- class Person attr_accessor:name attr_accessor:age def initialize(name) @name = name @age = -1 end def greet() puts "hello!Im " + @name end def introduce_myself puts "I\'m #{@name}." + " My age is #{@age}" end end ichiro = Person.new("ichiro") ichiro.age = 39 ichiro.introduce_myself
すると、以下のように表示される。
>ruby sample.rb I'm ichiro. My age is 39
Rubyでシングルクオテーションをエスケープしたいとき、つまり、文字列の中にシングルクオテーション(')を入れたいときは、「\」←ウィンドウズだったら円マークをシングルクオテーションの前に挿入する。
- 作者: 高橋征義,後藤裕蔵,まつもとゆきひろ
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2013/06/04
- メディア: 単行本
- この商品を含むブログ (23件) を見る
多くの人がこの本からRubyをスタートするようだ。