HeadFIrst Ruby 第二章总结 methods and classes

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 的

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

时间: 2024-11-13 08:50:17

HeadFIrst Ruby 第二章总结 methods and classes的相关文章

《HeadFirst Python》第二章学习笔记

现在,请跟着舍得的脚步,打开<HeadFirst Python>第二章. 一章的内容其实没有多少,多练习几次就能掌握一个大概了! <HeadFirst Python>的第二章设计得很有意思.它直接从制作一个模块入手,顺带讲了模块的导入,传统的书可不会这么搞. 不过书中关于编辑器的观点略显陈旧. 最好的编辑器是什么? 别用书中推荐的Python自带IDLE,在现阶段,请使用Jupyter Notebook来进行各项练习. 等学完这本书后,你可以选择PyCharm/Eric6/Wing

Ruby学习-第二章

第二章 类继承,属性,类变量 1.如何声明一个子类 class Treasure < Thing 这样Thing类中的属性name,description都被Treasure继承 2.以下三种方式传入父类initialize方法的参数分别是什么? # This passes a, b, c to the superclass def initialize( a, b, c, d, e, f ) super( a, b, c ) end # This passes a, b, c to the s

Ruby on Rails Tutorial 第二章

2.玩具应用 第二章,作者通过脚手架(scaffold generator) 快速地构建了一个应用,并围绕该应用谈论了关于数据模型.模型资源. MVC 架构.REST 架构的相关知识. 数据模型 & 模型资源 数据模型(data model) 用于表示应用所需的结构,例如:在一个微博类的网站中,包含两个数据模型: Micropost 和 User. 模型资源(resource) 是数据模型与网页页面的结合,可以通过 HTTP 命令来实现对模型的操作.这一思想与 REST 架构方式有关. MVC

iOS 6 By Tutorials ---第二章--【第一弹】--【翻译】

Chapter 2 :Programming in Modern Objective-C By Matthijs Hollemans 第二章:最新的OC编程 Old habits die hard, but if you’re still writing Objective-C in the style that was practiced when iPhone OS 2.0 first came out (mid-2008), then you’re missing out on some

Delphi知识点与技术概述【第二章 核心类库】

第三章 核心类库 Delhpi可视化编程依赖于庞大的巨型类库.Delphi 标准类库包含了数百个类以及数以千计的方法. 内容提要: *RTL包.CLX与VCL CLX用作linux中,VCL用作Windows中 VCL是一个独立的大型库(组件,控件,非可视组件,数据集合,数据感应控件,等等). 库的核心非可视化组件与类属于RTL包. Vcl结构: CLX结构: BaseCLX VisualCLX DateCLX NetCLX 库的VCL专用部分: VCL还提供了Windows专用的: Delph

【深度探索C++对象模型】第二章 构造函数语意学(上)

第二章 构造函数语意学(The Semantics of Constructors) -- 本书作者:Stanley B.Lippman 一.前言 首先让我们来梳理一个概念: 默认构造函数(Default Constructor) : 是在没有显示提供初始化式时调用的构造函数.它由不带任何参数的构造函数,或是为所有形参提供默认实参的构造函数定义.如果定义的某个类的成员变量没有提供显示的初始化式时,就会调用默认构造函数(Default Contructor). 如果用户的类里面,没有显示的定义任何

第二章预习

第二章实验(一):web服务目录的访问权限的控制 1.确认web服务器已经安装并启动 [[email protected] ~]# ls /usr/local/httpd/ bin build cgi-bin conf error htdocs icons include lib logs man manual modules [[email protected] ~]# netstat -utpln |grep 80 tcp 0 0 :::80 :::* LISTEN 73341/httpd

ASM学习笔记--ASM 4 user guide 第二章要点翻译总结

参考:ASM 4 user guide 第一部分 core API 第二章  类 2.1.1概观 编译后的类包括: l  一个描述部分:包括修饰语(比如public或private).名字.父类.接口或者注释区域. l  类中每个域声明的部分. l  类中每个方法以及构造函数声明的部分.也包含了方法编译后的代码,它是一系列Java字节码指令的形式. 编译后的类结构如下: 2.1.2内部名(internal name) 类或者接口使用内部名,内部名就是类的全限定名,即带斜杠的全称. 例如,Stri

JAVA学习之Ecplise IDE 使用技巧(2)第二章:键盘小快手,代码辅助

上一篇:JAVA学习之Ecplise IDE 使用技巧(1)第一章:我的地盘我做主,工作空间 第二章:键盘小快手,代码辅助 内容包括: 第一:显示行号 如何设置行号:Ecplice菜单Windows>Preferences>General>Editors>Text Editors>勾掉Show Line Numbers 第二:打造更强大的代码提示 一般.笨的方法是:输入几个字母后按住Alt+/ 如何设置自动提示: 默认配置是: Ecplice菜单Windows>Pref