Ruby中,任何事物都是对象:C=-99.abs
类和模块必须以大写字母开头
非常量:like_this
常量:LIKE_THIS,要求以大写字母开头,常量可以定义在类和模块中,不能定义在方法中,若想在外部访问类或模块中的常数时,要使用“::”操作符
大小写敏感
$ 全局变量以美元符号开头
@ 实例变量
@@ 类变量
? 返回布尔值的方法通常都有一个以问号结尾的名字
! 以感叹号结尾的方法:通常会改变调用它们的对象
不以感叹号结尾的方法则不会修改调用它们的对象,而是修改原本对象的一个拷贝并返回
= 可省略,这种方法通常被置于赋值操作符的左侧
\换行符
块:可用花括号 或者 do和end 作为分隔符,块中的代码具有两个空格符的缩进
体:方法定义体、类定义体等,永远不用花括号,而是采用关键字
Numeric类:所有数字对象都是其实例。
Integer类:所有整数都是其实例。
Fixnum类:整数值能容纳在31个二进制位里
Bignum类:任意大小的整数
Float类:实数
Complex类:复数
BigDecimal类: 表示具有任意精度的实数
Rational类:有理数
数值对象是不可变的
**操作符:指数
x**4:x*x*x*x
x**-1: 1/x
在单引号中,如果一个反斜线后面的字符不是单引号也不是反斜线,那么该该反斜线没有任何特殊作用
双引号支持支持转义序列
%q 可以代表单引号
%Q 可以代表双引号
alias关键字给方法或全局变量添加别名。别名将和原始方法绑定,全局变量时别名也会改变。
undef_method取消方法定义,即使父类中有同名方法,也取消。
remove_method取消当前方法定义,父类中有同名方法,则调用父类方法。