没有RailsJava程序员如何使用Ruby[2]
百度广告
在Ruby中,创建对象实例的方法与Java不同。不是使用Java中的"new ObjectInstance()"语法,而是,Ruby支持在一个对象上调用一个新方法,实际上是在内部调用了initialize方法。在列表4中,你可以看到我是怎样用Ruby创建一个Word实例及一些相应的Definition的:
列表4.在Ruby中创建一个新对象实例
require "dictionary" defin_one = Dictionary::Definition.new("Overflowing with enthusiasm") happy_wrd.add_definition(defin_one) |
六、 默认参数值
你是否注意到,在列表4中,当我创建happy_wrd实例时,我并没有一个definition或synonym的集合?我仅传递了拼写和语法成份。因为Ruby支持参数默认值,所以我成功地进行了省略。在列表3中定义的Word的initialize方法中,我指定了定义"="和同义词"="作为参数,这也就是向Ruby指出,如果它们不被调用者包括在内,那么将把它们默认地指定为空集合。
还要注意,在列表3中,Definition的initialize方法是如何支持默认参数的-通过把example_sentences设置为一个空集(Ruby的nil相应于Java中的null)来实现。在前面的列表1中,我必须用Java语言创建三个构造器才能取得与此相同的灵活性!
现在,请注意,在列表5中,通过使用灵活的initialize()方法我创建了一个不同的Word实例。
列表5.Ruby的灵活性!
require "dictionary" defin_two = Dictionary::Definition.new("sleight of hand") tricky_wrd = Dictionary::Word.new("prestidigitation", "noun", defs) |
七、 集合运算
Ruby的集合运算能力也相当简单-你是否看到在Word类中的add_definition和add_synonym方法?
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
-
国家电网30270试题
-
湖南中烟7463试题
-
湖南统招专升本不连网,流畅做题
-
长沙理工大学考研培训4532试题
已有 22658 名学员学习以下课程通过考试
精品课程
更多- 电网书籍
- 财会书籍
- 其它工学书籍
- 电气拼团课程
- 财会拼团课程
- 其它工学拼团
-
- 长理培训微信公众号
- 每日推送精彩考试资讯
长按二维码识别
微信搜索“ 长理培训”
-
- 加入QQ群一起来考国网!
- QQ群号:223940140
点击进入
长理培训客户端 资讯,试题,视频一手掌握
去 App Store 免费下载 iOS 客户端
点击加载更多评论>>