• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
我的成长足迹
夫志当存高远
博客园    首页    新随笔    联系   管理    订阅  订阅

Programming.Ruby 学习笔记(2、3章)

Programming.Ruby 学习笔记(2、3章)

ruby 对单引号和双引号的字符处理是不一样的。

(1)双引号可以应用到转义字符

(2)双引号内的字符串可以通过#{varname}进行变量替换,如果是全局变量或者实例变量不需要{}符号。------不是很懂这两个变量的区别

 

nil 在ruby中也是对象,只是他表示的是什么也没有。

 

ruby的控制结构语句没有花刮号,用end表示结束。

ruby中数值类型是不可变的,也就是传的值,不是引用。

 

3章,开始就说了对象的定义

ruby类的定义中的构造函数是initialize函数,初始化一个新对象是xx.new,ruby的tostring方法是to_s。

ruby添加一个新方法也太high了,只要直接添就好,和js有比的灵活性。

ruby的继承是使用<符号,super调用父类的同名方法。

ruby的@实例变量等同于private的字段,没法再外部访问,要访问就必须定义类似属性的方式建个方法返回。attr_reader :name,:age,:sex,attr_reader

是简化这种操作的关键字。这个实际是一个方法,这个是ruby元编程的一个表现,会动态替传进来的参数生成方法。

 

def name=(name)

@name=name

end

这是定义可写属性的方法,记住是以=结束。

类变量以@@声明,相当于静态方法,也是私有,如果需要被外部访问,必须ClassName.Var()开放访问。

 

导入外部的文件采用load ‘xxx.rb’的方式。

应该说用这个写个单例模式关键字用的太多了。。。,不喜欢这点

访问控制的级别也是三种,但是语法不同,放在最后声明的方式比较优雅点。

posted @ 2011-03-12 21:51  bwbwbw1984  阅读(202)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3