Ruby 教程 之 Ruby 面向对象 12
Ruby 面向对象
Ruby 是纯面向对象的语言,Ruby 中的一切都是以对象的形式出现。Ruby 中的每个值都是一个对象,即使是最原始的东西:字符串、数字,甚至连 true 和 false 都是对象。类本身也是一个对象,是 Class 类的一个实例。本章将向您讲解所有与 Ruby 面向对象相关的主要功能。
类用于指定对象的形式,它结合了数据表示法和方法,把数据整理成一个整齐的包。类中的数据和方法被称为类的成员。
类常量
您可以在类的内部定义一个常量,通过把一个直接的数值或字符串值赋给一个变量来定义的,常量的定义不需要使用 @ 或 @@。按照惯例,常量的名称使用大写。
一旦常量被定义,您就不能改变它的值,您可以在类的内部直接访问常量,就像是访问变量一样,但是如果您想要在类的外部访问常量,那么您必须使用 classname::constant,如下面实例所示。
实例
!/usr/bin/ruby -w
定义类
class Box
BOX_COMPANY = "TATA Inc"
BOXWEIGHT = 10
构造器方法
def initialize(w,h)
@width, @height = w, h
end
实例方法
def getArea
@width * @height
end
end
创建对象
box = Box.new(10, 20)
调用实例方法
a = box.getArea()
puts "Area of the box is : #{a}"
puts Box::BOX_COMPANY
puts "Box weight is: #{Box::BOXWEIGHT}"
尝试一下 »
当上面的代码执行时,它会产生以下结果:
Area of the box is : 200
TATA Inc
Box weight is: 10
类常量可被继承,也可像实例方法一样被重载。