java基础:枚举类

本文详细介绍了Java中的枚举类概念及其用法,包括如何创建枚举类、使用枚举类实现简单的计算器逻辑等,并提供了具体的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.什么是枚举类?

在某些情况下,一个类的对象是有限而且固定的,比如说季节类,性别类,这种实例有限而且固定的类,在java中称为枚举类

2.如何使用枚举类?

枚举类也是一种类,只是它是一种比较特殊的类,因此它一样可以定义成员变量,方法和构造器。

举个栗子:
 

/**
 * 在某些情况下,一个类的对象是有限而固定的。比如季节类。只有四个对象,或者性别类,这种实例有限而且固定的类,在java中被称为枚举类
 * 创建枚举类
 *
 *
 * */
public enum Gender implements IGenderTest {
    /**
     * 类体部分
     * */
    MALE("男"){
        @Override
        public void info() {
            System.out.println("这个枚举值代表男性");
        }
    }

    , FEMALE("女"){
        @Override
        public void info() {
            System.out.println("这个枚举值代表女性");
        }
    };
    private final String name;

    private Gender(String name) {
        this.name = name;
    }

    public String getName() {
        return this.name;
    }
}

public interface IGenderTest {
    void info();
}

public class GenderTest {
    public static void main(String[]args){
        Gender g=Gender.valueOf("FEMALE");
        System.out.println(g.getName());
        Gender g2=Gender.valueOf("MALE");
        System.out.println(g2.getName());
    }
}

*根据上述程序,枚举类中可以使用构造器和接口

 

使用枚举类实现简单计算器逻辑(使用抽象类)

public enum Operation {
    PLUS {
        public double eval(double x, double y) {
            return x + y;
        }
    },
    MINUS {
        public double eval(double x, double y) {
            return x - y;
        }
    },
    TIMES {
        public double eval(double x, double y) {
            return x * y;
        }
    },
    DIVIDE {
        public double eval(double x, double y) {
            return x / y;
        }
    };
    /**
     * 定义抽象方法
     * */
    public abstract double eval(double x,double y);
    public static void main(String[]args){
        System.out.println(Operation.PLUS.eval(4,4));
        System.out.println(Operation.MINUS.eval(4,4));
        System.out.println(Operation.TIMES.eval(4,4));
        System.out.println(Operation.DIVIDE.eval(4,4));

    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值