二十分鐘 教你Ruby快速入門 圖文教程第3/4頁
更新時(shí)間:2007年10月20日 18:58:18 作者:
窺視對(duì)象的內(nèi)部
對(duì)象中的實(shí)例變量總是隱藏于其中,但也并非毫無蹤跡可尋,通過審查(inspect)對(duì)象便會(huì)見到它們。當(dāng)然還有其它的訪問方法,但是Ruby采用了良好的面向?qū)ο蟮姆绞絹肀3謹(jǐn)?shù)據(jù)的隱藏性。

喔!這么多方法,可是我們只定義了兩個(gè)方法呀?其它的方法又出自何處?不要擔(dān)心,instance_methods方法列出了Greeter對(duì)象的所有方法,其中包括父類中定義的方法。如果我們只想對(duì)Greeter類的方法進(jìn)行列表的話,那么把false作為參數(shù)調(diào)用instance_methods方法即可。false意味著我們不需要父類定義的方法。

哈哈,這才是我們想要的。下面讓我們看看Greeter對(duì)象能回應(yīng)哪些方法:

它知道say_hi、to_s(此方法將對(duì)象轉(zhuǎn)換為字符串,是任何對(duì)象都必備的默認(rèn)方法,很想Java中的toString方法),但它不知道name。
隨時(shí)修改類定義
如何才能查看或者修改name呢?Ruby提供了訪問對(duì)象變量的簡(jiǎn)單方法:

在Ruby語言中,你能夠多次打開某個(gè)類并修改它。而修改所帶來的變化將應(yīng)用在此后建立的任何新對(duì)象中、甚至現(xiàn)存的此類對(duì)象中。下面讓我們建立一個(gè)新對(duì)象并訪問它的@name屬性。

我們通過使用attr_accessor定義了兩個(gè)方法:
“.name”用來獲取name屬性值;
“.name=”用來設(shè)置namee屬性值。
這很類似在Java類中訪問被Public修飾的成員變量。
您可能感興趣的文章:
- Ruby學(xué)習(xí)筆記之gem 命令詳解
- Ruby rails 頁面跳轉(zhuǎn)(render和redirect_to)
- Ruby 字符串處理
- RUBY 新手教程 跟我一起學(xué)ruby
- 學(xué)習(xí)Ruby你需要了解的相關(guān)知識(shí)(rvm, gem, bundle, rake, rails等)
- Ruby中執(zhí)行Linux shell命令的六種方法詳解
- 淘寶網(wǎng)提供的國(guó)內(nèi)RubyGems鏡像簡(jiǎn)介和使用方法
- 詳解Ruby中正則表達(dá)式對(duì)字符串的匹配和替換操作
- Ruby Gems更換淘寶源方法
- Windows下Ruby on Rails開發(fā)環(huán)境安裝配置圖文教程
- ruby 學(xué)習(xí)筆記(2) 類的基本使用
- ruby 異常處理:rescue
- CentOS 6.3下編譯安裝Ruby 2.0筆記
- Ruby中的return、break、next詳解
- 舉例講解Ruby中require的使用方法
- 更改RubyGem安裝源
- 使用Ruby來處理JSON的簡(jiǎn)單教程
- Ruby信號(hào)處理詳解
相關(guān)文章
Windows下Ruby+Watir自動(dòng)化測(cè)試的環(huán)境搭建及數(shù)據(jù)讀取
這篇文章主要介紹了Windows下Ruby+Watir自動(dòng)化測(cè)試的環(huán)境搭建及數(shù)據(jù)讀取,Watir是一個(gè)使用Ruby實(shí)現(xiàn)的開源Web自動(dòng)化測(cè)試框架,需要的朋友可以參考下2016-03-03Ruby與Ruby on Rails框架環(huán)境搭建的簡(jiǎn)明教程
這篇文章主要介紹了Ruby與Ruby on Rails框架環(huán)境搭建的簡(jiǎn)明教程,包括RubyGems的升級(jí)與OpenSSL的支持等配置,需要的朋友可以參考下2016-05-05Ruby 中關(guān)于日文轉(zhuǎn)UTF-8及半角全角轉(zhuǎn)換的技巧
Ruby 中關(guān)于日文轉(zhuǎn)UTF-8及半角全角轉(zhuǎn)換的技巧,實(shí)現(xiàn)代碼。2009-05-05