kotlin-examples examples with kotlin inheritance abstract class open class singelon with object companion interface implementation anonymous try cactch