我刚学Ruby没有几天,有个问题想请教一下高手:有学习资料说Ruby里没有方法的重载这一说法。不过我现在遇到这个需要像在java里写多个构造器的情况下该怎么实现。
class Abc
#1
def initialize()
end
#2
def initialize(name, &block)
@name = name
@block = block
end
def getText
"this is test"
end
def getTax(amount)
"#@name on #{amount} = #{ @block.call(amount) }"
end
end
#3
method1 = Abc.new()
method1.getText
#4
method2 = Abc.new("Sales tax") { |amt| amt * 0.075 }
puts method2.getTax(100)
为什么代码块#1和#2同时存在时,#3可以执行,#4就不可以,只存在#2和#4时,#4就可以执行,要在同一个类中实现像java那样的通过不同的构造器构造不同的实例,在Ruby里应该怎么实现,请各位大侠给的答案!!
分享到:
- 2008-07-02 15:49
- 浏览 3796
- 评论(3)
- 论坛回复 / 浏览 (3 / 3409)
- 查看更多
相关推荐
在工作中,他希望有一种比 Perl 强大,比 Python 更面向对象的语言。从1993年2月,他开始设计一个全新的自己的语言,1994年12月发布了第一个 alpha版本,并且将这种新语言定名为Ruby(红宝石)。 本教程内含多部中文...
本人正在写一个ruby程序,在网上找到有用的实例和函数说明,和大家一起分享。
Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp ...
请简要介绍在Ruby中的函数定义和调用方式。 7. Ruby中如何处理异常(Exception Handling)?请说明在Ruby中的异常处理机制。 8. Ruby中的数组(Array)和哈希(Hash)有什么区别?请说明在Ruby中数组和哈希的不同...
Ruby中文文档.CHM 方便ruby or rails学习.
ruby中文教程,从基础到深入的让你学习ruby
ruby中英文api 适合于初学者。 希望能给大家带来一些帮助
Ruby中文教程及相关源代码 Ruby中文教程及相关源代码 Ruby中文教程及相关源代码
ruby 中文文档 必备资料 一定要下哦
Ruby是一种功能强大的面向对象的脚本语言,她可以使您方便快捷地进行面向对象编程.Ruby使文本处理和系统管理变得简单,与Perl非常相似.一句话:简单明了,扩展性强,移植性好. Ruby的几大亮点: 语法简单 垃圾回收 ...
Http Client - 在Ruby中提供类似libwww-perl(LWP)的功能
ruby代码ruby代码ruby代码ruby代码ruby代码ruby代码ruby代码ruby代码
PyCall: 从Ruby语言调用Python函数
ruby中文手册 chm 内容挺多的 包含: 1、Ruby用户指南 2、Ruby参考手册 3、RGSS入门教程 4、Programming Ruby的翻译
nb60_trans_old_zh_CN,ruby中文文档中心资料
Ruby中机器学习的实用资源
ruby语言的简体中文教程
Watir - 在Ruby中Web应用程序测试
ruby2ruby 提供一些用来根据 RubyParser 兼容的 Sexps 轻松生成纯 Ruby 代码的方法。可在 Ruby 中轻松实现动态语言处理。 标签:ruby2ruby
Ruby on Rails中文指南