Java – How to build interface for such enum


I have the following enum:

public enum Status implements StringEnum{ 


    private String status = null;

    private Status(String status) {
        this.status = status;

    public String toString() {
        return this.status;

    public static Status find(String value) {
        for(Status status : Status.values()) {
            if(status.toString().equals(value)) {
                return status;

        throw new IllegalArgumentException("Unknown value: " + value );


Is it possible to build StringEnum interface to make sure every enum has find(), toString() and a constructor?


Best Solution

It's not possible to specify either constructors or static methods in an interface. For a good, concise explanation, check out this article: No static methods in interfaces