JAVA中的枚举类型

来源:互联网 发布:中国新歌声 台湾 知乎 编辑:程序博客网 时间:2024/06/03 02:30

例如:
以下是一个关于太阳系8颗行星的枚举例子:
每个行星都有质量和半径,通过这两个属性可以计算出行星的表面重力等常数

// Enum type with data and behavior - Pages 149-150package test.package30;public enum Planet {    MERCURY(3.302e+23, 2.439e6),     VENUS(4.869e+24, 6.052e6),     EARTH(5.975e+24, 6.378e6),     MARS(6.419e+23, 3.393e6),     JUPITER(1.899e+27, 7.149e7),     SATURN(5.685e+26, 6.027e7),     URANUS(8.683e+25, 2.556e7),     NEPTUNE(1.024e+26, 2.477e7);    private final double mass; // 质量    private final double radius; // 半径    private final double surfaceGravity; // 表面重力    // 万有引力常数    private static final double G = 6.67300E-11;    // 构造函数    Planet(double mass, double radius) {        this.mass = mass;        this.radius = radius;        surfaceGravity = G * mass / (radius * radius);    }    //得到质量    public double mass() {        return mass;    }    //得到半径    public double radius() {        return radius;    }    //得到表面重力    public double surfaceGravity() {        return surfaceGravity;    }    //牛顿定律 F=ma    public double surfaceWeight(double mass) {        return mass * surfaceGravity; // F = ma    }}
0 0
原创粉丝点击