码迷,mamicode.com
首页 > 其他好文 > 详细

HeadFIrst Ruby 第二章总结 methods and classes

时间:2019-03-02 22:26:52      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:enc   attr   methods   write   toc   这一   read   运行程序   交互   

HeadFIrst Ruby 第二章总结 methods and classes

前言

这一章讲了如何创建自己的 class,并且讲了在用 class 创建 object 的两个要素: instance variables 和 instance methods.和它们需要注意的一些问题.

创建 method 相关

问题1:括号 be or not be?

在 Ruby 中,如果需要创建的 method 包含参数,那么后面应该有“()” ;
如果不需要任何参数,则不需要加“()”,在调用函数的时候也不需要加.

问题2: local variable 和 instance variable 的区别

local variable:在定义的 method 范围之后,就 don‘t exisit 了
instance variable: 在定义的 class 的范围内都 exisit.

新知1:在 Terminal 中运行程序的另一种方法

特点:可以 load 这个 file 之后,然后进行交互的编程.

步骤:

  1. 在 Terminal 中输入 “irb -I ."
  2. 接着在提示下输入 "require xxx.rb"

新知2: atttribute accessor methods

定义:为了实现 encapsulation,如果想要给创建的 instance 传递参数的话,就需要通过 accessor methods 进行传递,它分为两类: attribute writer 和 attribute reader

attribute writer

定义:用于set an instance variable
惯例: attribute writer 的名字与 instance variable 的名字相同,结尾为 "=".
格式: 

def my_attribute=(new_value)
@my_attribute = new_value
end

attribute writer

定义:用于 get the value of an variable back
格式:

def my_attribute
@my_attribute
end

attribute accessor

可以用 

  • attr_writer :name
  • attr_reader :name
  • attr_accessor :name

代替 def 格式的代码,它们是 equivalent 的





HeadFIrst Ruby 第二章总结 methods and classes

标签:enc   attr   methods   write   toc   这一   read   运行程序   交互   

原文地址:https://www.cnblogs.com/FBsharl/p/10463251.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!