局部变量
以小写字母或下划线开头的标识符在 Ruby 中即为局部变量(如果引用未被声明的标识符则会被解释成无参数的方法调用)。
val = 5 if false
虽然 val 未被赋值,但声明还是有效的,此时 val 的值是 nil(相当于 C# 中的 null)。
实例变量
所有实例变量都是 @ 字符打头的标识符,未被初始化的实例变量值为 nil。
class Employee @empId end
类变量
以 @@ 开头的标识符是类变量。在 module 中定义的模块变量能够被所有包含该 module 的类访问。
1module Company 2 @@companyName = "Hello Ruby." 3 4 class Employee 5 def display 6 print "#@companyName" 7 end 8 end 9 10 class Department 11 def display 12 print "#@companyName" 13 end 14 end 15end
全局变量
全局变量无需声明,所有以 $ 开始的标识符都是全局变量,能够在程序的任何地方引用它,未赋值的全局变量值为 nil。1module Company 2 class Employee 3 def display 4 # nil 5 print "#$companyName" 6 $companyName = "Hello Ruby." 7 end 8 end 9 10 class Department 11 def display 12 # Hello Ruby. 13 print "#$companyName" 14 end 15 end 16end
伪变量
在 Ruby 中有一种被称为伪变量的标识符,伪变量有一点像环境变量,同时它也是只读的。# 当前方法的执行主体 print "#{self}" # NilClass类的唯一实例 print "#{nil}" # TrueClass 类的唯一实例 print "#{true}" # FalseClass 类的唯一实例 print "#{false}" # 当前源文件名 print "#{__FILE__}" # 当前源文件中的行号 print "#{__LINE__}"
常量
以大写字母打头的标识符是常量,对常量进行二次赋值解释器会提示警告,而引用未被赋值的常量实抛出 NameError 异常。在类、模块外部定义的常量属于 Object,可以使用“::常量名”引用属于 Object 的常量,以“模块名/类名::常量名”的形式引用外部的常量。1# 属于 Object 的常量 2GroupName = "心守家园" 3 4module Site 5 SiteUrl = "http://www.you2v.com" 6 7 class Sichuan 8 Add = "凉山" 9 # 引用属于 Object 的常量 10 print "#{::GroupName}" 11 end 12end 13 14# 直接引用类名、模块名 15# 引用属于 Object 的模块时可以省略“::” 16print "#{::Site}\n#{Site::Sichuan}" 17# 属于模块的常量 18print "#{Site::SiteUrl}" 19# 属于类的常量 20print "#{Site::Sichuan::Add}"当引用模块和类中同名的常量时,优先引用嵌套树外侧的常量, Object 的优先度最低,不过我建议大家尽量不使用同名常量。
相关推荐
1. **基础语法**:包括变量(本地、实例、类和全局变量)、常量、符号、字符串、数字、数组和哈希等基本数据类型。理解它们的定义、用法和操作方式是学习任何编程语言的第一步。 2. **控制结构**:条件语句(如if/...
本教程是为那些想要快速入门Ruby编程的初学者准备的,它以易读性和实用性为特点,旨在帮助你迅速掌握Ruby的基础知识。 1. **Ruby的基本概念** - **变量**:Ruby中的变量分为局部变量、实例变量、类变量和全局变量...
1. **Ruby基础语法**:了解Ruby的变量(局部变量、实例变量、类变量和全局变量)、常量、数据类型(包括字符串、数字、布尔值、数组、哈希等)以及控制结构(如条件语句、循环和范围表达式)。 2. **面向对象编程**...
在二十分钟的Ruby入门教程中,我们将快速浏览Ruby的基础知识,包括语法、数据类型、控制结构以及简单的类定义。 首先,让我们从Ruby的基本语法开始。Ruby的注释以`#`字符开始,一直持续到行尾。例如: ```ruby # 这...
这个"ruby入门练习题.zip"文件显然是为了帮助初学者逐步掌握Ruby编程的基础和面向对象的概念。以下是一些关于Ruby语言和面向对象编程的重要知识点: 1. **Ruby的起源与特点**:Ruby由日本人松本行弘在1993年创建,...
Ruby是一种面向对象的编程...这个入门教程对于初学者来说是非常宝贵的资源,它将帮助读者快速掌握Ruby的基础知识,并为深入学习和实践打下坚实的基础。通过打印文档,读者可以在离线环境下随时查阅,方便学习和参考。
**Ruby入门培训** Ruby是一种面向对象的编程语言,由日本...总之,Ruby入门需要对基本概念有清晰的认识,并通过大量实践来熟悉其语法和编程思维。这个压缩包提供了一个很好的起点,可以帮助初学者快速步入Ruby的世界。
1. 变量:Ruby有四种变量类型,分别是局部变量(以小写字母或下划线开头)、实例变量(以`@`开头)、类变量(以`@@`开头)和全局变量(以`$`开头)。它们各自的作用域不同,使用时需注意。 2. 控制结构:Ruby支持...
- **变量**:Ruby有四种变量,分别是局部变量、实例变量、类变量和全局变量,它们以不同的符号开头(@, @@, $)。 - **控制结构**:Ruby支持条件语句(if/else/unless)、循环(for, while, until, each)和块...
1. **变量与常量**:Ruby中的变量分为局部变量、实例变量、类变量和全局变量等不同类型。常量则用于存储固定不变的数据。 2. **数据类型**:包括数值类型(整型、浮点型等)、字符串、数组、哈希表等。 3. **控制...
- Ruby有局部变量、实例变量、类变量和全局变量,每种都有特定的标识符前缀。 - 常量以大写字母开头,但并不强制不可改变,只是修改会发出警告。 2.2 **运算符** - Ruby支持常见的算术、比较、逻辑等运算符,并...
- 变量:Ruby中的变量分为五种类型,分别是局部变量(以小写字母或下划线开头)、实例变量(以`@`开头)、类变量(以`@@`开头)、全局变量(以`$`开头)和常量(以大写字母开头)。 - 数据类型:包括字符串、数字...
Ruby还支持模块,用于封装方法和常量,可以实现类似命名空间的功能。 Ruby的控制结构使程序能够根据条件执行不同代码块。例如,if-else语句用于进行条件判断,while和for循环用于重复执行代码。Ruby还提供了一种...
### Ruby入门教程知识点详解 #### 一、Ruby语言概述 **1.1 Ruby的历史** Ruby是一种面向对象的脚本语言,由日本人松本行弘(Matz)于1995年开始开发。Ruby的设计理念是“使编程人员快乐”,因此它具有简洁、直观...
1. 变量:Ruby有四种基本类型的变量,分别是局部变量(以小写字母或下划线开头)、实例变量(以`@`开头)、类变量(以`@@`开头)和全局变量(以`$`开头)。它们各自的作用域不同,理解这些变量的使用方式是学习Ruby...
Ruby还支持模块(Module),它是组织代码的一种方式,可以包含常量、类方法和实例方法。模块可以被混入(include)到类中,实现代码的复用。这对于创建类之间的关系,尤其是横向关系非常有用。 Ruby的块(Block)和...
本入门教程“Ruby语言入门教程v1”旨在帮助初学者快速掌握Ruby的基础知识和核心概念,以便能轻松地进行编程。 Ruby的起源: Ruby由日本人松本行弘在1995年创造,其设计目标是强调程序员的生产力和代码的可读性。它...
### RUBY基础入门指南 #### 一、Ruby语言概述 **1.1 Ruby的历史** Ruby是一种面向对象的脚本语言,由日本人松本行弘(Yukihiro Matsumoto)于1995年开始开发。它结合了Perl的灵活性、Smalltalk的强大功能以及Ada...