What is const val (Compile Time Constant) in Kotlin?

Since the val variable is read-only, in most cases we could treat it as a constant. We need to be aware that its initialization may be delayed, so this means that there are scenarios where the val variable may not be initialized at compile time, for example, when assigning the result of the method call to a value:

In this quick tutorial, we’ll discuss static final variables in Java and their equivalent in Kotlin.

In Java, declaring static final variables helps us create constants. And in Kotlin, we have several ways to achieve the same goal.

It’s a compile error to specify const when the assignment expression isn’t a compile-time constant.
On the other hand, if the assignment expression is a compile-time constant, IDEA suggests to add const keyword.
Hence the question: why does the language need it at all, if the compiler can infer it just fine? What would change if we never use this keyword and let the compiler auto-infer it, so that it can be used for optimizations and whatever the other uses of const currently are.

This value will be assigned at runtime. There are, however, situations where we need to know the value at compile time. The exact value is required when we want to pass parameters to annotations. Annotations are processed by an annotation processor that runs long before the application is started:

0 0 votes
Article Rating

Related articles

Mobile App Development Services

Mobile App Development - Android mobile application developer -...

15 Upbeat IDE for developing Android App

IDE for developing android Application abbreviated as Integrated development...

How to Enable WhatsApp Payment

WhatsApp Pay has finally been given regulatory approval by...

WhatsApp Payment Launch in Brazil

Facebook's WhatsApp messaging service rolled out a system across...

Case Studies

Compass Music Platform

A clothing brand wanted to launch a new e-commerce website that would allow customers to browse and purchase their products online. We developed a...

NewsWeek Magazine

A clothing brand wanted to launch a new e-commerce website that would allow customers to browse and purchase their products online. We developed a...

Beauty & Makeup Shop

A clothing brand wanted to launch a new e-commerce website that would allow customers to browse and purchase their products online. We developed a...
0
Would love your thoughts, please comment.x
()
x