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
hashCode methods, getters & setters and a
- 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