一 类
class order <ActiveRecord::Base #类order继承自ActiveRecord::Base
has_many :line_items #这个是ActiveRecord中的方法
attr_accessor :class # 等同于同时声明了getter和setter方法
attr_reader :time #声明了getter方法
attr_writer :num # 声明了setter方法
def initialize(name)
#构造方法
end
#name的读方法
def name
@name
end
# name的写方法
def name=(newname)
@name=newname
end
def self.findall
# 类方法
end
#默认的方法都是public公开的,
def find (a)
# 成员方法
end
# 定义只有自己能使用属性为private的方法
private
def privatefind(a)
end
#定义自己或者子类能使用的属性为protected的方法
protected
def protectedfind(a)
# 方法实现
end
end
有一个值得注意的地方是,这里的class order并不是和java语言一样是声明一个类,而是调用方法,打开类order(如果没有就创建并打开),然后将后面的声明都赋值给他。
二. 模块
模块和类是相似的,都是由一个个的方法,常量,其他模块和类定义构成的,与类不同的是,模块不能创建基于其本身的对象。
1. 模块的作用
- 作为命名空间定义方法,其名称不与其他地方定义的方法有冲突
- 允许在不同的类之间共享功能。
2. 模块的声明
module MyModule
def module_method
# 方法实现
end
end
#使用的时候
include modulename
基础语法暂时就上面这些啦,以后碰到继续补充~。