RosettaCodeData/Task/Inheritance-Multiple/Pluto/inheritance-multiple.pluto
2026-04-30 12:34:36 -04:00

21 lines
450 B
Text

class Camera
function snap() print("taking a photo") end
end
class Phone
function call() print("calling home") end
end
class Cameraphone extends Camera
function __construct(public phone) end -- uses composition for the Phone part
-- Inherits Camera's snap() method.
-- Phone's call() method can be wrapped.
function call() self.phone:call() end
end
local p = new Phone()
local cp = new Cameraphone(p)
cp:snap()
cp:call()