|
前
-
コピー
-
次
-
目次
クラス現実世界はモノに満ちていて,人間はそれらのモノを分類する能力 がある.例えば,うちの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 前 - コピー - 次 - 目次 |