help me in this code kOTLIN !!!!
You decide to make the Component class abstract, since you are not going to create objects of that type. You also add a show() function to it that the derived classes need to override. For a Button, the show() function should output: "Showing a Button", while for an Image it should output: "Showing an Image". abstract class Component(width: Int, height: Int) { protected var width = width protected var height = height abstract fun show() } class Button(width: Int, height: Int): Component(width, height) { private var name: String = "Button" fun tap() { println(name + " was tapped") } } class Image(width: Int, height: Int): Component(width, height) { fun draw() { println(width.toString()+"x"+height.toString()) } } fun main(args: Array<String>) { val b1 = Button(200, 50) b1.tap() b1.show() val img = Image(300, 500) img.draw() img.show() } help me in this code