ruby-attr_accessor使用】的更多相关文章

(Ruby/Python/Perl) Ruby 语言与Python和Perl的一个很大区别,在于Ruby中,所有的实例变量都是在类中完全私有的,只能通过accessor 方法来进行变量访问,引用一段代码来说明具体的使用方法: class Rectangle attr_accessor :width attr_accessor :height attr_accessor :width2 attr_accessor :height2 def initialize(wdth, hgt) @width…
原文地址:http://lee2013.iteye.com/blog/1098914 1. attr_accessor的用法相当简单, 就相当于getter和setter,看一个类就知道怎样用了: class Test attr_accessor :name def initialize() @name = "yanzilee9292" end end #test puts Test.new.name 保存这个类为test.rb文件, 通过命令行运行 ruby test.rb, 会得到…
普通的实例变量 普通的实例变量,我们没法在 class 外面直接访问 #普通的实例变量,只能在 class 内部访问 class C1 def initialize(name) @name = name end end t1 = C1.new( {'a' => 1, 'b' => 2}) puts t1.name #报错: undefined method `name' for #<Context::C1:0x0000000142cd30 @name={:a=>1, :b=>…
attr_reader方法------读取实例变量 attr_writer方法------改写实例变量 attr_accessor方法-----读写实例变量 class Person attr_reader :name ---------1 attr_writer :name ---------2 def initialize(name) @name = name end end 1 相当于: def name @name end 2 相当于:def name=(value) @name = v…
突然今天发现一大神的博客:http://www.cnblogs.com/jackluo/archive/2013/01/22/2871655.html    相信初学者会受益颇多 ruby  参考文档:http://www.tutorialspoint.com/ruby/ 关于ruby 的算法:http://liuzxc.github.io/blog/sorting-algorithm/ 变量类型 描述 示例 局部变量(或伪变量) 以小写字母或下划线卡头 var    _var 全局变量 以$开…
#!/usr/bin/env ruby class MegaGreeter attr_accessor :names # 初始化這個物件 def initialize(names = "World") @names = names end # 向每個人說 hi def say_hi if @names.nil? puts "..." elsif @names.respond_to?("each") # @names 是可以迭代的陣列容器 @nam…
我们可以认为module是一个专门存放一系列方法和常量的工具箱. module和class非常像, 只是module不能创建实例也不能有子类, 它们仅仅能存放东西. 例如: module Circle PI = 3.141592653589793 def Circle.area(radius) PI * radius**2 end def Circle.circumference(radius) 2 * PI * radius end end module书写格式 module ModuleNa…
Ruby继承的语法 class DerivedClass < BaseClass #some stuff end < 为继承符号 重写(override) 的概念 有时, 我们希望子类从父类继承来的方法可以做与父类不相同的事情,这就需要在子类中重写方法.例如, 你有一个类名字叫Email继承于类Message,两个类都有send方法,但是Email类的send方法需要有邮件地址和一系列邮件协议,但是Message中的send方法并不知道这些,与其在Email类中添加send_mail方法,而从…
1. 调试&注释&打印输出 1.1 调试 ruby属于解释型语言,即脚本,在linux上,脚本的执行无非三种: 1. 用解释器运行脚本 解释器 脚本文件 即:ruby  脚本文件 2. 直接运行脚本 在脚本文件里面用 #! 脚本解释器 定义好脚本解释器路径,然后再授予脚本执行权限,接着直接运行 ./脚本文件 即可. 3. 在解释器里面运行脚本 root@tommy:/home/ywt/ror_tests/ruby_tests# irb 2.1.5 :001 > str = "…
首发:个人博客,更新&纠错&回复 学不同语言,常将它们的基础语法搞混,例如if后面有没有(),后面是then还是:还是{,结尾是end还是}. 这种事情毫无技术含量又毫无乐趣可言,但极大地影响流畅度,所以这次再看ruby语法,决定把基础语法记下来,方便以后查看. 代码放到了这里,目前只有ruby,待以后用别的语言时再陆续添加. 内容如下,都是最基础的用法,需要时一看就明白. #参考:<Ruby完全自学手册>第三章.第四章 #常量大写字母开头,变量小写字母开头 CHANG_LIA…