心はいつもAirPucci (空元気でもいいから)

毎日がPucciを着ているような気分

初めてのRuby8章 8.2変数と定数

   


8.2 変数と定数

8.2.1 インスタンス変数

@で始まるのがインスタンス変数。インスタンス内部で有効。

8.2.2 クラス変数

クラスで同じ値を保持できるのが@@で始まるクラス変数。

class Taro
  @@okozukai = 5000
  def kozukai
    puts "Taroのおこづかいは" + @@okozukai.to_s + "円です。"
  end
end

class Jiro < Taro
  def initialize
    @jiro = @@okozukai - 1000 
  end

  def kozukai
    puts "Jiroのおこづかいは" + @jiro.to_s + "円です。"
  end
end

class Saburo < Taro
  def initialize
    @saburo = @@okozukai - 2000 
  end

  def kozukai
    puts "Saburoのおこづかいは" + @saburo.to_s + "円です。"
  end
end

taro = Taro.new
taro.kozukai

jiro = Jiro.new
jiro.kozukai

saburo = Saburo.new
saburo.kozukai

クラス変数は書き換えはできる。

8.2.3 定数

書き換えできるクラス変数に対し、定数はクラスに属する書き換えできない変数。

class Teisu
  RINGO_EIGO = "apple"
  p RINGO_EIGO + "クラス内で参照しました。" 

  def print_apple
    p RINGO_EIGO + "クラスのメソッド内で参照しました。" 
  end
end

p Teisu::RINGO_EIGO + "クラス外で参照しました。" 
teisu = Teisu.new
teisu.print_apple

8.4 アクセス権限

public, private, protectをつける事でアクセス権限をつけることができる。Javaはクラス全体につける事ができたのに、Rubyはメソッド毎かいな?

public:どこからでも呼び出しできる
protected:そのクラス、そのサブクラスの、インスタンスメソッドからのみ呼び出しできる
private:レシーバ省略形式でしか呼び出しできない。 selfに対してしか呼び出しできない。

クラス全体にアクセス権限をつける事ができなくていいのだろうか?

次は8.4 特異メソッドと特異クラス

【送料無料】初めてのRuby [ Yugui ]

【送料無料】初めてのRuby [ Yugui ]
価格:2,310円(税5%込、送料込)

 - テクニカル ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

no image
Mavericksでruby2.0 rails4.0.0のGem

MacBookAirにMavericksインストールして初めてのrails ne …

Ruby on Railsを4.1.0にバージョンアップする

真央ロス真央廃を超えた腐まお状態な1ヶ月1週間、まるで娘が嫁に行った父親のごとし …

WordPressのテンプレートを自分で作ってみました

ブログ更新は久々になりました。この2週間、ずっとこのブログ用にWordPress …

no image
RailsTutorial4.0を高速で復習する。6.2.4章。

6.2.4フォーマットを検証する です。 メールアドレスは文字数制限だけじゃだめ …

no image
MacBookAirは壊れるの?

1ヶ月ぶりにWindows機を立ち上げています。HDDのカリカリ言う音が冷や汗も …

no image
iPhoneのKindleアプリでChip Conley氏の本を読んでみました。その2

iPadの発売がようやく発表されました。私個人としては読書端末としての利用を期待 …

ジョジョ専用kindle fire HDの電源が入らない!

電源が入らない!MacBookAirが真っ黒になりました。とか、 iPhoneの …

no image
RailsTutorial4.0を高速で復習する。3.5章。最後の問題。

3.5演習、3もんめ、最後の問題です。 3.(上級者向け)「Heroku pag …

no image
あんたのrakeは新しいけど古いのが必要なんだよっ!!と怒られた

Mavericksってrubyが2.0になったんですね。 てのはおいといて、 r …

no image
iPhoneのKindleアプリでChip Conley氏の本を読んでみました。その1

GWで電子本も文庫本も読み終え、「新しい本に入れ替えないと~」と思いながらすっか …