扩展

class Point
    def initialize(x, y)
        @x = x
        @y = y
    end
end

class Size
    def initialize(width, height)
        @width = width
        @height = height
    end
end

class Rect
    def initialize(point, size)
        @point = point
        @size = size
    end

    def getArea()
        # object @size extension
        class << @size
            def area()
               return @height * @width
            end
        end

        return @size.area()
    end
end

rect = Rect.new(
    Point.new(34), Size.new(1012))
area = rect.getArea()
# area is 120

puts "area is #{area}"