免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3040 | 回复: 9
打印 上一主题 下一主题

File类为什么能使用io类的print [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-12-21 13:53 |只看该作者 |倒序浏览
  1. a=File.new("1","w")
  2. a.print "hello"
复制代码
结果是产生一个“1”文件包含“hello”

File类中没有print方法

论坛徽章:
0
2 [报告]
发表于 2010-12-21 13:58 |只看该作者
结果是产生一个“1”文件包含“hello”

File类中没有print方法
fanasy 发表于 2010-12-21 13:53



    所谓继承。

irb(main):001:0> File.ancestors
=> [File, IO, File::Constants, Enumerable, Object, Kernel]

论坛徽章:
0
3 [报告]
发表于 2010-12-21 14:01 |只看该作者
结果是产生一个“1”文件包含“hello”

File类中没有print方法
fanasy 发表于 2010-12-21 13:53



    File没有print的类方法,但是有print的实例方法。

irb(main):012:0> File.instance_methods.include? "print"
=> true

论坛徽章:
0
4 [报告]
发表于 2010-12-21 14:02 |只看该作者
喔,谢谢,我不知道有ancestors方法。

论坛徽章:
0
5 [报告]
发表于 2010-12-21 15:45 |只看该作者
嗨!记得最后来个a.close()。

论坛徽章:
0
6 [报告]
发表于 2010-12-21 18:20 |只看该作者

  1. >> File.superclass
  2. => IO
  3. >> File.superclass.superclass
  4. => Object
复制代码

论坛徽章:
0
7 [报告]
发表于 2010-12-22 14:55 |只看该作者
回复 6# Sapien


    Sapien,抽空发发你的Ruby使用心得吧。

论坛徽章:
0
8 [报告]
发表于 2010-12-22 23:07 |只看该作者
回复  Sapien


    Sapien,抽空发发你的Ruby使用心得吧。
2gua 发表于 2010-12-22 14:55



    事实上我学 Ruby 还不到一个月……
我之前用 Perl 比较多,Perl 的优势在于模块多而成熟,不过 CPAN dependency hell 我是忍了很久了。她 ugly 的语法我倒不是很在乎,至少自己写程序的时候是比较爽的。Perl 最初的设计是用来替代 sed, awk 等文本处理工具的,所以在很多方面不是原生支持的,是后来添加的,比如面向对象、多线程和对 Unicode 的支持,这样风格上就会不统一。我想深入了解 Perl,但感觉不容易。所以我想另找一门更简洁优雅的,风格统一的语言,深入研究。后来就找到了 Ruby。


简单说一下我的学习历程,希望对初学者有所帮助:

一开始上 Ruby 的官网瞅了瞅,按次序看了主页上列出的简明教程:

这样就有了大概的了解,确定自己喜欢上这门语言了。

接着看了官网上列出的一个教程:Learn to Program http://pine.fm/LearnToProgram/
然后看了一下广受赞誉的 Programming Ruby,不过第一部分都没看完。
后来买了一本 The Ruby Programming Language,大概花了2个星期,基本看完一遍。感觉收获很大,这本书讲得很仔细,很全面,而且涵盖了 Ruby 1.9。

在这过程中用了一下 Net::HTTP 的提交表单功能和 open-uri  库,写了一个从网上抓图片的程序。前两天还了解了一下用 Ruby 写游戏,简单用了一下 Gosu 库,给自己写了一个屏保 -

现在在学 Rails,工作中刚好有个项目要用到。

到现在,我还是非常喜欢 Ruby,喜欢她的纯面向对象,她的简洁优雅,以及她身上 Perl 的影子。
不过看书的时候让我感到不舒服的是 synonym 太多了,好多不同的方法用法完全一致,有些用法却有细微的差别,记忆的时候很 painful。
不过总体上来说,相比 Python 的严格拘谨,我更喜欢这种自由散漫的风格。以后会多用 Ruby 的,欢迎大家交流~

评分

参与人数 1可用积分 +5 收起 理由
2gua + 5 我很赞同

查看全部评分

论坛徽章:
0
9 [报告]
发表于 2010-12-23 07:09 |只看该作者
谢谢Sapien的分享啊!

论坛徽章:
0
10 [报告]
发表于 2010-12-23 17:40 |只看该作者
我感到不舒服的是 synonym 太多了


我不太喜欢rails里面大量的元编程。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP