How to declare constants in Java?

Free Coding Questions Catalog
Boost your coding skills with our essential coding questions catalog. Take a step towards a better tech career now!

In Java, constants are typically declared using the final keyword. The final keyword in Java is used to indicate that the value of a variable cannot be changed once it has been assigned. Constants are often declared with the static keyword as well, especially when they are meant to be shared across all instances of a class. This combination makes the constant a static final variable, which is a common practice for defining constants in Java.

Declaring Constants in Java

Here are the steps to declare constants in Java:

  1. Use the final Keyword: To ensure that the variable's value cannot be modified once it is set.
  2. Use the static Keyword: To make the constant a class-level variable, which means it can be accessed without creating an instance of the class.
  3. Use Uppercase Letters with Underscores: By convention, constant names are written in all uppercase letters with underscores separating words.

Example of Declaring Constants

Here is an example demonstrating how to declare constants in Java:

Example: Simple Constants

public class ConstantsExample { // Constants public static final int MAX_USERS = 100; public static final String APPLICATION_NAME = "MyApplication"; public static final double PI = 3.141592653589793; public static void main(String[] args) { System.out.println("Max Users: " + MAX_USERS); System.out.println("Application Name: " + APPLICATION_NAME); System.out.println("Value of PI: " + PI); } }

In this example:

  • MAX_USERS is an integer constant with a value of 100.
  • APPLICATION_NAME is a string constant with a value of "MyApplication".
  • PI is a double constant representing the value of π.

Example: Constants in an Interface

Another way to declare constants is within an interface. Constants in an interface are implicitly public, static, and final.

public interface Config { int MAX_USERS = 100; String APPLICATION_NAME = "MyApplication"; double PI = 3.141592653589793; } public class ConstantsInterfaceExample { public static void main(String[] args) { System.out.println("Max Users: " + Config.MAX_USERS); System.out.println("Application Name: " + Config.APPLICATION_NAME); System.out.println("Value of PI: " + Config.PI); } }

Best Practices

  • Naming Conventions: Use uppercase letters and underscores to separate words in constant names.
  • Immutable Values: Ensure that the values assigned to constants are immutable. For example, using strings and primitive types.
  • Class for Constants: If you have a large number of constants, consider creating a dedicated class to store them. This class can be a utility class that only contains static final fields.

Example: Utility Class for Constants

public class AppConstants { public static final int MAX_USERS = 100; public static final String APPLICATION_NAME = "MyApplication"; public static final double PI = 3.141592653589793; }

Usage:

public class ConstantsUtilityClassExample { public static void main(String[] args) { System.out.println("Max Users: " + AppConstants.MAX_USERS); System.out.println("Application Name: " + AppConstants.APPLICATION_NAME); System.out.println("Value of PI: " + AppConstants.PI); } }

By following these guidelines, you can effectively declare and manage constants in your Java applications, ensuring that their values remain unchanged and are easily accessible throughout your codebase.

TAGS
System Design Interview
CONTRIBUTOR
Design Gurus Team

GET YOUR FREE

Coding Questions Catalog

Design Gurus Newsletter - Latest from our Blog
Boost your coding skills with our essential coding questions catalog.
Take a step towards a better tech career now!
Explore Answers
Is 1 hour enough to prepare for an interview?
What's the difference between the data structure Tree and Graph?
What are the design principles of Netflix?
Related Courses
Image
Grokking the Coding Interview: Patterns for Coding Questions
Image
Grokking Data Structures & Algorithms for Coding Interviews
Image
Grokking Advanced Coding Patterns for Interviews
Image
One-Stop Portal For Tech Interviews.
Copyright © 2024 Designgurus, Inc. All rights reserved.