国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

directory search
Ruby用戶指南 3、開(kāi)始 4、簡(jiǎn)單的例子 5、字符串 6、正則表達(dá)式 7、數(shù)組 8、回到那些簡(jiǎn)單的例子 9、流程控制 10、迭代器 11、面向?qū)ο笏季S 12、方法 13、類 14、繼承 15、重載方法 16、訪問(wèn)控制 17、單態(tài)方法 18、模塊 19、過(guò)程對(duì)象 20、變量 21、全局變量 22、實(shí)變量 23、局部變量 24、類常量 25、異常處理:rescue 26、異常處理:ensure 27、存取器 28、對(duì)象的初始化 29、雜項(xiàng) RGSS入門(mén)教程 1、什么是RGSS 2、開(kāi)始:最簡(jiǎn)單的腳本 3、數(shù)據(jù)類型:數(shù)字 4、數(shù)據(jù)類型:常量與變量 5、數(shù)據(jù)類型:字符串 6、控制語(yǔ)句:條件分歧語(yǔ)句 7、控制語(yǔ)句:循環(huán) 8、函數(shù) 9、對(duì)象與類 10、顯示圖片 11、數(shù)組 12、哈希表(關(guān)聯(lián)數(shù)組) 13、類 14、數(shù)據(jù)庫(kù) 15、游戲?qū)ο?/a> 16、精靈的管理 17、窗口的管理 18、活動(dòng)指令 19、場(chǎng)景類 Programming Ruby的翻譯 Programming Ruby: The Pragmatic Programmer's Guide 前言 Roadmap Ruby.new 類,對(duì)象和變量 容器Containers,塊Blocks和迭代Iterators 標(biāo)準(zhǔn)類型 深入方法 表達(dá)式Expressions 異常,捕捉和拋出(已經(jīng)開(kāi)始,by jellen) 模塊 基本輸入輸出 線程和進(jìn)程 當(dāng)遭遇挫折 Ruby和它的世界 Ruby和Web開(kāi)發(fā) Ruby Tk Ruby 和微軟的 Windows 擴(kuò)展Ruby Ruby語(yǔ)言 (by jellen) 類和對(duì)象 (by jellen) Ruby安全 反射Reflection 內(nèi)建類和方法 標(biāo)準(zhǔn)庫(kù) OO設(shè)計(jì) 網(wǎng)絡(luò)和Web庫(kù) Windows支持 內(nèi)嵌文檔 交互式Ruby Shell 支持 Ruby參考手冊(cè) Ruby首頁(yè) 卷首語(yǔ) Ruby的啟動(dòng) 環(huán)境變量 對(duì)象 執(zhí)行 結(jié)束時(shí)的相關(guān)處理 線程 安全模型 正則表達(dá)式 字句構(gòu)造 程序 變量和常數(shù) 字面值 操作符表達(dá)式 控制結(jié)構(gòu) 方法調(diào)用 類/方法的定義 內(nèi)部函數(shù) 內(nèi)部變量 內(nèi)部常數(shù) 內(nèi)部類/模塊/異常類 附加庫(kù) Ruby變更記錄 ruby 1.6 特性 ruby 1.7 特性 Ruby術(shù)語(yǔ)集 Ruby的運(yùn)行平臺(tái) pack模板字符串 sprintf格式 Marshal格式 Ruby FAQ Ruby的陷阱
characters

前面一節(jié)的?Fruit?類有兩個(gè)實(shí)變量,分別表述水果的類型和狀態(tài).直到為這個(gè)類寫(xiě)了一個(gè)定制的inspect方法,我們方才了解它不會(huì)對(duì)一個(gè)缺乏屬性的水果做出合理的解釋.幸運(yùn)的是,Ruby提供了一種允許實(shí)變量總是被初始化的方法.


initalize方法

當(dāng)Ruby創(chuàng)建一個(gè)新對(duì)象時(shí),它總是會(huì)尋找一個(gè)名為?initialize?的方法并執(zhí)行它.因此,我們可以簡(jiǎn)單通過(guò)一個(gè)initialize方法向?qū)嵶兞恐屑尤肴笔≈?這樣一來(lái),?inspect方法就有東西可說(shuō)了.

ruby>?class?Fruit
????|???def?initialize
????|?????@kind?=?"apple"
????|?????@condition?=?"ripe"
????|???end
????|?end
???nil
ruby>?f4?=?Fruit.new
???"a?ripe?apple"?

將缺省的變?yōu)樾枰?br>
很多時(shí)候,缺省值不會(huì)有太多的意思.真的是缺省那樣的水果嗎?也許在創(chuàng)造水果的時(shí)候?qū)ζ漕愋妥饕笫莻€(gè)更好的辦法.要這樣做,我們就必須給initialize?方法加入一個(gè)正式的參數(shù).因?yàn)橐恍┎粫?huì)在此提及的原因,你向?new?傳遞的參數(shù)實(shí)際上是遞給了initialize.

ruby>?class?Fruit
????|???def?initialize(?k?)
????|?????@kind?=?k
????|?????@condition?=?"ripe"
????|???end
????|?end
???nil
ruby>?f5?=?Fruit.new?"mango"
???"a?ripe?mango"
ruby>?f6?=?Fruit.new
ERR:?(eval):1:in?`initialize':?wrong?#?of?arguments(0?for?1)?

彈性的初始化

上面我們看到一旦一個(gè)參數(shù)被關(guān)聯(lián)到一個(gè)?initialize?方法上,就無(wú)法在避免錯(cuò)誤產(chǎn)生的情況下將其省掉.如果希望考慮周全,我們可以在給了參數(shù)的情況下使用它,否則使用缺省值.

ruby>?class?Fruit
????|???def?initialize(?k="apple"?)
????|?????@kind?=?k
????|?????@condition?=?"ripe"
????|???end
????|?end
???nil
ruby>?f5?=?Fruit.new?"mango"
???"a?ripe?mango"
ruby>?f6?=?Fruit.new
???"a?ripe?apple"?

可以在任何方法內(nèi)使用缺省參數(shù),而不僅僅是initialize.參數(shù)表(argument?list)必須以有缺省值的參數(shù)結(jié)尾.

有時(shí),提供多種初始化對(duì)象方法是有益的.雖然已超出本教程的范圍,但Ruby提供了對(duì)象映象(object?reflection)和可變長(zhǎng)度的參數(shù)表(variable-length?argument?lists),這些都有效地促進(jìn)了方法重載. 版權(quán)聲明:RUBY文檔中心的所有文章標(biāo)明[原創(chuàng)]的均為本站作品,版權(quán)屬RUBY中文化計(jì)劃,若轉(zhuǎn)載請(qǐng)注明;標(biāo)明[翻譯]的其外文版權(quán)歸原作者,譯文版權(quán)屬RUBY中文化計(jì)劃;標(biāo)明[轉(zhuǎn)貼]的,若原作者感到侵犯了他的著作權(quán),那么請(qǐng)及時(shí)跟主持人聯(lián)系,我們會(huì)盡快更正。 ?
Previous article: Next article: