類是對具有同樣屬性和同樣行爲的對象的抽象,Ruby中類的聲明使用class關鍵字。定義類的語法如下,
classClassName
defmethod_name(variables)
#somecode
end
end
類的定義要在class…end之間,在上面的格式中,ClassName是類名,類名必須以大寫字母開始,也就是說類名要是個常量。
看下面的例子:
class Person
def initialize(name,gender, age)
@name = name
@gender = gender
@age = age
end
end
#一個簡單的例子
class MyFirstRubyProgram
def initialize
end
def SayHello(name='zzp')
puts "Hello, #{name}!"
end
end
MyFirstRubyProgram.new.SayHello("servyou2010")
MyFirstRubyProgram.new.SayHello()
若某個類已經被定義過,此時又用相同的類名進行類定義的話,就意味着對原有的類的定義進行追加。
class Test
def meth1
puts "This is meth1"
end
end
class Test
def meth2
puts "This is meth2"
end
end
在Test類中,原有meth1方法,我們又追加了meth2方法,這時候,對於Test類的對象,meth1和meth2同樣可用。