3月17枚举

java 复制代码
package com.fangfa.day05.Enum;

public class EnurmerDemo1 {
    public static void main(String[] args) {
        //为什么其他类里可以类名.对象名   因为这个对象名被static修饰了
        //若不修饰不行
        System.out.println(Season.SPRING);

    }
}
class Season{
    /**
     * @Description
     * @author Mao Reed
     * @version 1.17.0
     * @date 2026/3/27 15:28
     * 之所以能在 Season 内部调用 new Season(...),
     * 是因为构造器被 private 修饰,只能在 Season 类的内部访问。
     * 这种写法是手动实现枚举效果的一种常见方式:通过私有构造器和预定义的静态常量来限制对象个数。
     *
     *
     * 构造器是 private 的,因此只能在 Season 类的内部调用 new Season(...),外部无法直接实例化。
     *
     * 类内部通过 public static 常量提前创建好有限的几个对象(例如 SPRING、SUMMER 等),
     * 外部可以通过 Season.SPRING 访问。
     */
private String name ;
private String desc;
public   static final Season SPRING = new Season("春天","温暖");
public static final Season SUMMER = new Season("夏天","炎热");
public static final Season AUTUMN = new Season("秋天","凉爽");
public static final Season WINTER = new Season("冬天","寒冷");
//构造器私有
    //去掉setXX方法防止属性被修改
    private Season(String name, String desc) {
        this.desc = desc;
        this.name = name;
    }

    public String getDesc() {
        return desc;
    }

    public String getName() {
        return name;
    }
//setName 是一个典型的 setter 方法(设置器),用于在对象创建之后,修改对象的某个属性值
//    public void setName(String name) {
//        this.name = name;
//    }

    public void setDesc(String desc) {
        this.desc = desc;
    }

    @Override
    public String toString() {
        return "Season{" +
                "name='" + name + '\'' +
                ", desc='" + desc + '\'' +
                '}';
    }
}
相关推荐
m0_5873830014 分钟前
智慧场馆解决方案实战指南:从系统架构到落地部署全解析
java·spring boot·架构·系统架构
我不是疯子是傻子15 分钟前
Qt 程序打包部署全攻略:从 windeployqt 到 Inno Setup 的静默安装与版本迭代实战
开发语言·qt
ZC跨境爬虫18 分钟前
LeetCode 13. 罗马数字转整数(多解法详解 + Java Python 实现)
java·python·leetcode
省长24 分钟前
Sa-Token v1.46.0 发布 🚀,来看看有没有令你心动的功能!
java·后端·开源
LayZhangStrive1 小时前
融360 一面
java·面试·后端开发
城管不管1 小时前
重生——第十次面试之开源中国一面挂
java·linux·开发语言·算法·面试·职场和发展·开源
Java小白笔记1 小时前
Windows系统免软件命令激活
java·网络·人工智能·windows·ai·ai编程
爱敲键盘的猴子1 小时前
深入理解 Java HashMap
java·hashmap
霸道流氓气质1 小时前
Java开发者AI编程常用MCP、Skills、Rules全景汇总
java·开发语言·ai编程
天涯醉青楼2 小时前
Spring Boot 接口返回 Bean 时字段名“变形”的深度剖析与解决方案
java