`
fyting
  • 浏览: 215444 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Ruby语法中setter的实现

阅读更多
粗略翻了下Ruby的介绍,晕,Ruby里setter居然是这样搞出来的:
class User
  def name=(myname)
    @name = myname
  end
end

user1 = User.new("aaa")

调用时这样:
user1.name='test1'

看上去很直观吧,比Java里的user1.setName("test")简洁多了,很像C#的Property。实质上呢,这里只有普通的Ruby语法,仅仅用到了几种“魔术”:
Ruby的方法命名可以用问号,感叹号,等号结尾(?,!,=),所以这里调用的是"name="这样一个方法
Ruby调用方法可以不带括号,也就是说,下面两句是等同的:
user1.name= ('test1')
user1.name= 'test1'

至于
user1.name = 'test1'

为什么也可以使用(等号前多了个空格),还是没有搞明白。
分享到:
评论

相关推荐

    eclipse中setter、getter注释

    eclipse中的setter与getter注释,实体的编写,在代码编写工程中能清晰了解此意

    spring的setter注入实现mysql数据库的连接

    spring的setter注入实现mysql数据库的连接 下载 看看吧

    Eclipse中setter/getter方法自动添加属性注释

    eclipse中setter/getter方法自动添加属性注释,详情参考http://blog.csdn.net/yuxinabc/article/details/49179113

    GIDOT TYPESETTER 3.0.8

    ·关闭时保存编辑现场,包括当前排版助手中的文本以及光标位置 ·小工具箱里增加“去掉汉字间的空格”、“生成随机字符串”两项功能 功能改进: ·快捷工具条增加排版设置按钮 ·更换了玻璃质感的图标 ·其它显示上...

    java简便方法引入getter/setter/tostring等方法

    java 的eclipse或idea等 定义变量时 直接引入lombok.jar包 在类外部 引入@AllArgsConstructor @NoArgsConstructor @Data 简便方法引入getter/setter/tostring等方法

    排版助手gidot typesetter 3.1.1

    排版助手gidot typesetter 是一款比较受欢迎的智能文章排版软件,这款排版软件不大,且不需要安装即可轻松实现编辑排版。 排版助手gidot typesetter主要功能:段落智能修正、去掉某些防拷贝的干扰符、修正段落首尾...

    eclipse 自动为getter和setter 添加中文注释

    eclipse 自动为getter和setter添加中文注释 详细参见 http://blog.csdn.net/kongguoan/article/details/38293137

    JavaScript中setter和getter方法介绍_.docx

    JavaScript中setter和getter方法介绍_.docx

    Typesetter CMS v5.1.zip

    TypesetterCMS是一个功能全面的网站内容管理系统,其嵌入式的管理接口可以让用户在一个简单的浏览器窗口中看到网站的改变。 Typesetter CMS特色功能: 真正的所见即所得编辑器 (CKEditor) 图库浏览 (ColorBox) ...

    Laravel开发-setter

    Laravel开发-setter 将数据库设置与Laravel集成的简单方法。

    Gidot_Typesetter_3.0.6.rar

    ·将排版工具菜单整合到鼠标右键菜单中 ·优化程序设置处理代码 ·段首缩进空格增加全角与半角选项 ·排版工具放在 排版需求 菜单下  ·文字统计信息对话框增加复制按钮 ·统计信息里增加全角统计  BUG修正: ·...

    JavaScript中setter和getter方法介绍

    javascript中的setter、getter是平时接触比较少的方法,其本身也并不是标准方法,只在非ie浏览器里支持(ie内核也许有其他方法可以做到呢?暂时不知其解),但是加以利用可以做许多事情,比如: 1、对数据的访问限制...

    Gidot TypeSetter文章自动排版工具

    Gidot TypeSetter文章自动排版工具

    Gidot TypeSetter(排版助手)

    Gidot TypeSetter是一款广受编辑追捧的智能排版整理文章的软件,该软件短小精悍,无需安装即可使用。适合新闻采集员、编辑、文摘网及有文章排版需求者。 软件主要功能:段落智能修正、去掉某些防拷贝的干扰符、修正...

    Typesetter CMS 5.1.zip

    Typesetter CMS是一个功能全面的网站内容管理系统,其嵌入式的管理接口可以让用户在一个简单的浏览器窗口中看到网站的改变。 Typesetter CMS 5.1 更新日志:2017-08-12 页面编辑;部分可视性;剖面剪贴板;嵌入...

    spring setter 和构造 注入 例子 spring 4.2.0

    IOC DI 一个spring4.2.0 spring setter 和构造 注入 的小例子

    Typesetter CMS v5.1

    Typesetter cms是一个完整的内容管理系统,它可以用来创建丰富和可扩展性的站点,它的用户界面简单易用,内嵌的管理页面可以让用户在同一个窗口里即时的浏览站点页面的变更。

    Typesetter CMS v5.0 rc4

    Typesetter cms是一个完整的内容管理系统,它可以用来创建丰富和可扩展性的站点,它的用户界面简单易用,内嵌的管理页面可以让用户在同一个窗口里即时的浏览站点页面的变更。

    iOS getter setter方法

    已经拥有一年经验的你真的了解get set方法吗?也许不!以前我以为都有上架项目,这都是太基础的东西,但今天我重新回头看了以前做的笔记,真的是书读百遍,其义自见。

    Gidot_Typesetter. 一个文件排版工具

    Gidot_Typesetter. 一个文件排版工具

Global site tag (gtag.js) - Google Analytics