Quick Facts

This page concisely presents all the Kotlin highlights.

A lot of these might make not much sense to you right now - but you will learn all about this in the Kotlin Guide!

  • Kotlin does not require a ; after each statement
  • Kotlin is null safe
  • Kotlin offers 100% Java interoperability
  • Kotlin has no primitives (but makes use of them internally on the JVM, if possible, to improve performance)
  • Kotlin classes have properties, no simple fields
  • Kotlin offers data classes, with automatically generated equals/hashCode methods, getters & setters and a copy method
  • Kotlin only knows about runtime exceptions, no checked exceptions
  • Kotlin has no new. Creating objects is done just by calling their constructor like any other method
  • Kotlin supports (sensibly restricted) operator overloading. For example, you can access a value in a map like this: val a = someMap["key"]
  • Kotlin can not only be compiled to JVM byte code, but also to Java Script, enabling developers to write both backend and frontend code in Kotlin
  • Kotlin is fully compatible to Java 6, which is especially interesting on Android, which only supports Java up to version 6 on most common devices
  • Kotlin is an officially supported language for Android development
  • Kotlin distinguishes between mutable and immutable collections.
  • Kotlin offers coroutines
  • Kotlin is open source and Apache License 2.0 licensed
  • Kotlin is developed by JetBrains, the creators of IntelliJ IDEA a powerful and popular IDE for Java and others