Kubernate

Monday, November 10, 2025

0005.Java Enums

 Java Enums

Introduction

Enums in Java provide a way to define a set of named constants. They are used to represent a fixed set of values and are often used to define categories, states, or modes. Enums are type-safe and provide many features that enhance code readability and maintainability.

Table of Contents

1.     What are Enums?

2.     Benefits of Using Enums

3.     Defining Enums

4.     Using Enums

5.     Enum Methods

6.     Enum with Fields and Methods

7.     Real-World Analogy

8.     Example: Enum in Java

9.     Conclusion

1. What are Enums?

Enums (short for enumerations) are a special class in Java that represents a group of constants. Each constant in an enum is an instance of the enum type. Enums provide a way to define a fixed set of related constants, making the code more readable and maintainable.

2. Benefits of Using Enums

  • Type-Safety: Enums provide compile-time type safety, ensuring that only valid values are used.
  • Readability: Enums make the code more readable by giving meaningful names to a set of constants.
  • Maintainability: Enums group related constants together, making the code easier to maintain.
  • Methods: Enums can have fields, methods, and constructors, allowing for more complex and useful functionality.

3. Defining Enums

Enums are defined using the enum keyword. Each constant in an enum is separated by a comma.

Example:

public enum Direction {

    NORTH, SOUTH, EAST, WEST

}

4. Using Enums

Enums can be used in switch statements, as method parameters, and in collections.

Example: Using Enums in a Switch Statement

public class EnumExample {

    public enum Direction {

        NORTH, SOUTH, EAST, WEST

    }

 

    public static void main(String[] args) {

        Direction direction = Direction.NORTH;

 

        switch (direction) {

            case NORTH:

                System.out.println("Heading North");

                break;

            case SOUTH:

                System.out.println("Heading South");

                break;

            case EAST:

                System.out.println("Heading East");

                break;

            case WEST:

                System.out.println("Heading West");

                break;

        }

    }

}

Output:

Heading North

5. Enum() Methods

Enums have built-in methods such as values()valueOf(String name), and ordinal().

Example:

public class EnumMethodsExample {

    public enum Direction {

        NORTH, SOUTH, EAST, WEST

    }

 

    public static void main(String[] args) {

        // Using values() method

        for (Direction direction : Direction.values()) {

            System.out.println(direction);

        }

 

        // Using valueOf() method

        Direction dir = Direction.valueOf("EAST");

        System.out.println("Direction: " + dir);

 

        // Using ordinal() method

        System.out.println("Ordinal of EAST: " + dir.ordinal());

    }

}

Output:

NORTH

SOUTH

EAST

WEST

Direction: EAST

Ordinal of EAST: 2

6. Enum with Fields and() Methods

Enums can have fields, constructors, and methods, allowing them to be more versatile and useful.

Example:

public class EnumWithFieldsExample {

    public enum Size {

        SMALL(30), MEDIUM(40), LARGE(50);

 

        private int value;

 

        private Size(int value) {

            this.value = value;

        }

 

        public int getValue() {

            return value;

        }

    }

 

    public static void main(String[] args) {

        Size size = Size.MEDIUM;

        System.out.println("Size: " + size + ", Value: " + size.getValue());

    }

}

Output:

Size: MEDIUM, Value: 40

7. Real-World Analogy

Discover more

Java virtual machine

Library

Application programming interface

Python Programming

JDK

SQL

Learn Go Programming

React Tutorial

Libraries

Java Development Kit

Consider a traffic light system:

  • The traffic light can have fixed states: RED, YELLOW, and GREEN.
  • Using an enum to represent these states makes the code more readable and ensures that only valid states are used.

8. Example: Enum in Java

Let’s create a comprehensive example demonstrating enums with fields, methods, and constructors.

Example:

public class EnumExample {

    public enum Day {

        MONDAY("Start of work week"),

        TUESDAY("Second day"),

        WEDNESDAY("Mid week"),

        THURSDAY("Almost there"),

        FRIDAY("End of work week"),

        SATURDAY("Weekend"),

        SUNDAY("Weekend");

 

        private String description;

 

        private Day(String description) {

            this.description = description;

        }

 

        public String getDescription() {

            return description;

        }

    }

 

    public static void main(String[] args) {

        Day today = Day.FRIDAY;

 

        System.out.println("Today is: " + today);

        System.out.println("Description: " + today.getDescription());

 

        System.out.println("All Days:");

        for (Day day : Day.values()) {

            System.out.println(day + ": " + day.getDescription());

        }

    }

}

Output:

Today is: FRIDAY

Description: End of work week

All Days:

MONDAY: Start of work week

TUESDAY: Second day

WEDNESDAY: Mid week

THURSDAY: Almost there

FRIDAY: End of work week

SATURDAY: Weekend

SUNDAY: Weekend

9. Conclusion

o   Enums in Java provide a powerful way to define and work with a fixed set of constants.

o   They offer type safety, improved readability, and enhanced maintainability.

o   By understanding and using enums effectively, you can create more robust and maintainable Java applications.

o   Enums can be simple or complex, with fields, methods, and constructors, allowing them to handle a wide range of scenarios.

 

No comments:

Post a Comment

Spring Boot - Bean LifeCycle

 Here is a clear, step-by-step lifecycle of a Spring Boot application , explained in a simple + interview-ready way. 🔄 Spring Boot Applica...

Kubernate