Ruby Is an Object-Oriented Language
Ruby不僅僅是一個(gè)OO語(yǔ)言,她還是一門(mén)genuine OO language,比如說(shuō):-123.abs 這是ruby的寫(xiě)法,但是在java里面要用 Math.abs(-123)這顯然是面向過(guò)程的寫(xiě)法,因為java里面存在著(zhù)原始類(lèi)型,所以,java永遠也不能算的上是一門(mén)genuine OO language。純對象的編程語(yǔ)言會(huì )對編程帶來(lái)不可想象的影響。Ruby中,操作的是對象,產(chǎn)生的結果也是對象。
Ruby里面的class由2部分組成:states,methods。states表示所有variable的集合,每個(gè)對象的建立,需要使用一個(gè)特殊的method---constructor,new是默認的constrator,例如 song = Song.new("ruby")
methods在objects接受messages時(shí)被調用,messages包括method‘name,parameter 或者 block,這些以后都會(huì )提到。 舉例說(shuō)明:
"gin joint".length #method‘s name
"Rick".index("c") #method‘s name & parameter
此外還要補充一個(gè)術(shù)語(yǔ),receiver,就是period前面的object。我們這里稱(chēng)做receiver,也就是因為message的原因。我們可以認為它們是一套術(shù)語(yǔ)。
總結:
術(shù)語(yǔ)
| term one | term two |
| object | receiver |
| method parameter(varible) block | message |
*出現在方法后面的varible就是parameter
*class實(shí)例化以后就是class instance---object
聯(lián)系客服