Ruby准备工作

解释性语言,自上而下执行,纯面向对象,跨平台,动态绑定,没有多重继承。
NetBeans sun公司开发
irb指令可快速实时输入并返回结果 quit 或者exit
rdoc hello.rb 生成html文档
rdoc -f chm 生成chm文档,依赖月微软的html help workshop
gem ruby包管理
gem list列出已经安装的包
gem install 安装包
gem uninstall 卸载安装包
gem query 搜索包
gem help 使用帮助
rebyscript2exe 和exerb 可一个把ruby转换为脱离环境 独立执行文件的工具。

命名规则

局部变量以小写字母或者下划线开头。
全局变量以美元符号$开头。
实例变量以@开头。
类变量以@@开头。
常量或类名以大写字母开头。

关键字

module 模块定义
class 类
def,undef 方法
defined? 检查类型
if,then,else,elsif,case,when,unless 条件语句
for,in,while,until,next(continue),break,do,redo(重复当前循环周期),retry(重复整个迭代循环),yield 循环语句
not,and,or 逻辑判断
nil 空值
rescue,ensure 异常处理
super,self 对象引用
begin/end 块的起始结束
BEGIN,END 嵌入模块
_FILE_,_LINE_ 文件相关
alias 别名
nil与c#的null类似,ruby在逻辑判断中,只有nil和false表示假,其他所有表达式都表示真。

public,protected,private 子类可以在内部使用父类的protected和private,C#中只可以访问protected

class BaseClass
  def public_m1()
    puts "basePublic"
  end
  protected
  def protected_m2()
    puts "baseProtected"
  end
  private
  def private_method()
    puts "basePrivate"
  end
end
class MyClass<BaseClass
  def call_basepublic()
    public_m1
  end
  def call_baseprotected()
    protected_m2
  end
  def call_baseprivat()
    private_method
  end
end
#baseclass=BaseClass.new
#baseclass.private_method 私用不能访问
#baseclass.protected_m2 受保护也不能访问
myclass=MyClass.new
myclass.call_baseprivat
myclass.call_baseprotected
myclass.call_basepublic


 
原文地址:https://www.cnblogs.com/smailxiaobai/p/4155112.html