Java 枚举类不能直接继承其他类,因为它们是特殊的类,具有唯一性和不可变性。但是,Java 枚举类可以实现一个或多个接口。这样,你可以通过接口实现类似继承的功能,共享方法和属性。
例如,假设你有一个接口 Drawable
,它包含一个 draw()
方法:
public interface Drawable { void draw(); }
现在,你可以创建一个实现了 Drawable
接口的枚举类 Shape
:
public enum Shape implements Drawable { CIRCLE { @Override public void draw() { System.out.println("Drawing a circle"); } }, RECTANGLE { @Override public void draw() { System.out.println("Drawing a rectangle"); } }; public abstract void draw(); }
这样,Shape
枚举类就继承了 Drawable
接口的方法,并实现了它。现在你可以使用 Shape
枚举类的实例调用 draw()
方法:
public class Main { public static void main(String[] args) { Shape shape = Shape.CIRCLE; shape.draw(); // Output: Drawing a circle } }