How super works in ruby

On November 18, 2010, in Technical, by sankalp

Following example shows how super function is interpreted by ruby.

class Rectangle 
	def initialize(side1 , side2) 
		@side1 = side1
		@side2 = side2
	end

	def area
		@side1 * @side2
	end
end

class Square < Rectangle
	def initialize( side) 
		super(side, side)
	end

	def area
		super
	end
end

rect = Rectangle.new( 2, 3 )
square = Square.new(4)
puts rect.area
puts square.area

Output:
6
16

In this example we can see that super calls up the function of the base-class in which it is called.

Tagged with: