Kotlin: Cannot create an instance of an abstract class
In this tutorial, we shall learn to fix Kotlin: Cannot create an instance of an abstract class.
Following is a sample of the error you might get during compilation.
Error:(2, 27) Kotlin: Cannot create an instance of an abstract class
Solution
In Kotlin, we cannot create an instance of an abstract class.
Abstract class could only be inherited by a class or another Abstract class. So, to use abstract class, create another class that inherits the Abstract class.
Following is an example that demonstrates the usage of kotlin abstract class.
Kotlin Program – example.kt
/** * Abstract Class */ abstract class Vehicle { // regular variable var name : String = "Not Specified" // abstract variable abstract var medium : String // regular function fun runsWhere() { println("The vehicle, $name, runs on $medium") } // abstract function abstract fun howItRuns() } /** * inheriting abstract class */ class Aeroplane : Vehicle() { // override abstract variables and functions of the // abstract class that is inherited override var medium: String = "air" override fun howItRuns() { println("Aeroplane fly based on buoyancy force.") } } fun main(args: Array<String>) { var vehicle1 = Aeroplane() vehicle1.howItRuns() }
Output
Aeroplane fly based on buoyancy force.