Singleton Pattern with Enums in Java.

Are there any disadvantages? I do not know (as usual)..

MyRegularClass.java
package biz.tugay.singletonwenumex;
 
/* User: koray@tugay.biz Date: 2016/08/12 */
public class MyRegularClass {
 
    private int data;
 
    public MyRegularClass(int data) {
        this.data = data;
    }
 
    public int getData() {
        return data;
    }
}

MySingletonClass.java
package biz.tugay.singletonwenumex;
 
import java.util.Random;
 
/* User: koray@tugay.biz Date: 2016/08/12 */
public enum MySingletonClass {
 
    MY_SINGLETON_CLASS_INSTANCE;
 
    public void foo() {
        System.out.println("Foo");
    }
 
    public boolean bar() {
        final int randomNumber = new Random().nextInt();
        return (randomNumber % 2) == 0;
    }
 
    public MyRegularClass getRegularClassInstance(int data) {
        return new MyRegularClass(data);
    }
}

TestClass.java
package biz.tugay.singletonwenumex;
 
/* User: koray@tugay.biz Date: 2016/08/12 */
public class TestClass {
 
    public static void main(String[] args) {
        final MySingletonClass mySingletonClassInstance
                = MySingletonClass.MY_SINGLETON_CLASS_INSTANCE;
 
        mySingletonClassInstance.foo();
 
        System.out.println(mySingletonClassInstance.bar());
        System.out.println(mySingletonClassInstance.bar());
        System.out.println(mySingletonClassInstance.bar());
 
        final MyRegularClass regularClassInstanceOne =
                mySingletonClassInstance.getRegularClassInstance(5);
 
        final MyRegularClass regularClassInstanceTwo =
                mySingletonClassInstance.getRegularClassInstance(6);
 
        System.out.println(regularClassInstanceOne.getData());
        System.out.println(regularClassInstanceTwo.getData());
    }
}

Sample output:
Foo
true
false
true
5
6

Enum types are singletons by nature, so JVM handles most of the work required to create a singleton.