Line 1: |
Line 1: |
− | -- For unit tests, see [[Module:Bananas/testcases]] | + | -- Meta class |
− | local p = {}
| + | Rectangle = {area = 0, length = 0, breadth = 0} |
| | | |
− | function p.hello() | + | -- Derived class method new |
− | return "Hello, world!"
| + | |
| + | function Rectangle:new (o,length,breadth) |
| + | o = o or {} |
| + | setmetatable(o, self) |
| + | self.__index = self |
| + | self.length = length or 0 |
| + | self.breadth = breadth or 0 |
| + | self.area = length*breadth; |
| + | return o |
| end | | end |
| | | |
− | return p
| + | -- Derived class method printArea |
| + | |
| + | function Rectangle:printArea () |
| + | print("The area of Rectangle is ",self.area) |
| + | end |