Ruby Users' Guide - クラス

前 - コピー - 次 - 目次

### クラス

現実世界はモノに満ちていて，人間はそれらのモノを分類する能力 がある．例えば，うちの1歳の娘はセントバーナードを見ても，シェ パードを見ても，ちゃんと『わんわん』と認識する．素晴らしいパ ターン認識能力！ とはいえ，キツネを見ても『わんわん』と呼ん でいるような気がするが．

とにかく，オブジェクト指向では，この『わんわん』のような「分 類」をクラス，クラスに属するオブジェクト(『ポチ』とか)をイン スタンスという．

rubyをはじめとする多くのオブジェクト指向言語では，オブジェク トを作るのに，まずそのオブジェクトの振舞を決めるクラスを定義 して，それから，そのクラスのインスタンスを作るというやり方を とる．まずrubyでクラスを定義してみよう．

     ruby> class Dog
     ruby|   def bark
     ruby|     print "わんわん\n"
     ruby|   end
     ruby| end
     nil

classからendまでがクラスの定義だ．classの中でのdefはそのクラ スのメソッドを定義することになる．

とりあえず，Dogクラスができたので，オブジェクトを作ってみる．

     ruby> pochi = Dog.new
     #<Dog:0xbcb90>

これで，Dogクラスの新しいインスタンスが作られて，変数pochiに 代入されたことになる．クラスのnewメソッドは新しいインスタン スを作るメソッドだ．pochiはDogクラスで定義された性質を持つの で，「吠える」ことができる

     ruby> pochi.bark
     わんわん
     nil

前 - コピー - 次 - 目次