Java Enumeration example

In this tutorial we will discuss about enumerations in Java. The Java programming language contains the enum keyword, which represents a special data type that enables for a variable to belong to a set of predefined constants. The variable must be equal to one of the values that have been predefined for it. The values defined inside an enum are ...

Read More »

Using an enum as a state machine

In this short example, a parser state machine processes raw XML from a ByteBuffer. Each state has its own process method and if there is not enough data available, the state machine can return to retrieve more data. Each transition between states is well defined and the code for all states is together in one enum. interface Context { ByteBuffer ...

Read More »

Each Enum Instance a different sub-class

In this example we shall show you how to have each enum instance represent a different sub-class. To make each enum instance represent a different sub-class one should perform the following steps: Create an enum with different enum constants. Give each enum constant a different behavior for some method. Declare the method abstract in the enum type and override it with ...

Read More »

Enum to implement an interface

With this example we are going to demonstrate how to use an enum to implement an interface. Implementing an interface with an enum can be useful when we need to implement some business logic that is tightly coupled with a discriminatory property of a given object or class. In short, to implement an interface with an enum you should: Create ...

Read More »

Enum for Singleton and Utility class

enum Singleton { INSTANCE; } enum Utility { ; // no instances } Related Article: Java Secret: Using an enum to build a State machine Reference: Java Secret: Using an enum to build a State machine from our JCG partner Peter Lawrey at the Vanilla Java blog

Read More »

Want to take your Java skills to the next level?

Grab our programming books for FREE!

Here are some of the eBooks you will get:

  • Spring Interview QnA
  • Multithreading & Concurrency QnA
  • JPA Minibook
  • JVM Troubleshooting Guide
  • Advanced Java
  • Java Interview QnA
  • Java Design Patterns