枚举应用五

简介: 复杂枚举结构和简单枚举结构混合应用 混合枚举 1 package com.yeepay.sxf.euma; 2 /** 3 * 简单的数据结构和复杂的数据结构枚举 4 * @author sxf 5 * 6 */ 7 public enum Categor...

复杂枚举结构和简单枚举结构混合应用

混合枚举

 1 package com.yeepay.sxf.euma;
 2 /**
 3  * 简单的数据结构和复杂的数据结构枚举
 4  * @author sxf
 5  *
 6  */
 7 public enum Category {
 8     /**
 9      * 简单的枚举
10      */
11     Memey("记忆大脑",WorkName.ONECLASS),
12     
13     /**
14      * 复杂的枚举
15      */
16     DORYS{
17         @Override
18         public String findName() {
19             return "我是对的";
20         }        
21     };
22     
23     //变量名
24     private String name;
25     private WorkName workName;
26     
27     //简单枚举的构造函数
28     private Category(String name,WorkName workName){
29         this.name=name;
30         this.workName=workName;
31     }
32     
33     //构造函数(复杂枚举结构构造函数)
34     private Category() {
35         
36     }
37     
38     
39     //普通方法(复杂枚举结构方法可重写)
40     public String findName(){
41         return "";
42     }
43     
44     public String getName() {
45         return name;
46     }
47     public void setName(String name) {
48         this.name = name;
49     }
50     public WorkName getWorkName() {
51         return workName;
52     }
53     public void setWorkName(WorkName workName) {
54         this.workName = workName;
55     }
56     
57     
58 
59 }
View Code

其他枚举(其中看到的枚举,参考上一篇枚举博客)

 1 package com.yeepay.sxf.euma;
 2 /**
 3  * 枚举间的结合使用
 4  * @author sxf
 5  */
 6 public enum WorkName {
 7     /**
 8      * 一班
 9      */
10     ONECLASS{
11     
12         @Override
13         public String[] getWorkNameAres() {
14             return new String[]{
15                     WorkNameAres.KONGTONGPAIYIBAN.getClassname(),
16                     WorkNameAres.WUDANGPAIYIBAN.getClassname()
17             };
18         }
19 
20         @Override
21         public String getDesc() {
22             return "一班" ;
23             
24         }
25 
26         @Override
27         public WorkType getType() {
28             return WorkType.YIBAN;
29         }
30         
31     },
32     
33     /**
34      * 二班
35      */
36     TWOCLASS{
37 
38         @Override
39         public String[] getWorkNameAres() {
40             
41             return new String[]{
42                     WorkNameAres.EMEIPAIHUOJIAN.getClassname(),
43                     WorkNameAres.SHAOLEIPAIHUOJIAN.getClassname()
44             };
45         }
46 
47         @Override
48         public String getDesc() {
49             return "二班";
50         }
51 
52         @Override
53         public WorkType getType() {
54             return WorkType.HUOJIAN;
55         }
56         
57         
58     }
59     ;
60     
61     /**
62      * 获取班级的具体名字
63      * @return
64      */
65     public abstract String[]  getWorkNameAres();
66     /**
67      * 获取详细名字
68      * @return
69      */
70     public abstract String getDesc();
71     /**
72      * 获取班级类型
73      * @return
74      */
75     public abstract WorkType getType();
76     
77 
78 }
View Code

测试类

 1 package com.yeepay.sxf.euma;
 2 
 3 
 4 public class Test {
 5     public static void main(String[] args) {
 6         test5();
 7     }
 8     
 9     
10     public static void test5(){
11         //获取枚举中的一个值
12         String name=Category.Memey.getName();
13         System.out.println("Test.test5(获取枚举对象中的一个值=>)"+name);
14         //获取枚举中的枚举
15         WorkName workName=Category.Memey.getWorkName();
16         //获取枚举的名字
17         String descname=workName.getDesc();
18         System.out.println("Test.test5(获取枚举的名字=>)"+descname);
19         //使用枚举中的方法
20         String abnameString=Category.DORYS.findName();
21         System.out.println("Test.test5(使用结构枚举值==>)"+Category.DORYS.name());
22         System.out.println("Test.test5(使用枚举中的方法==>)"+abnameString);
23     }
24 }
View Code

测试结果

Test.test5(获取枚举对象中的一个值=>)记忆大脑
Test.test5(获取枚举的名字=>)一班
Test.test5(使用结构枚举值==>)DORYS
Test.test5(使用枚举中的方法==>)我是对的

相关文章
|
5天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
15天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
9天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
600 214
|
存储 人工智能 监控
从代码生成到自主决策:打造一个Coding驱动的“自我编程”Agent
本文介绍了一种基于LLM的“自我编程”Agent系统,通过代码驱动实现复杂逻辑。该Agent以Python为执行引擎,结合Py4j实现Java与Python交互,支持多工具调用、记忆分层与上下文工程,具备感知、认知、表达、自我评估等能力模块,目标是打造可进化的“1.5线”智能助手。
836 61
|
7天前
|
人工智能 移动开发 自然语言处理
2025最新HTML静态网页制作工具推荐:10款免费在线生成器小白也能5分钟上手
晓猛团队精选2025年10款真正免费、无需编程的在线HTML建站工具,涵盖AI生成、拖拽编辑、设计稿转代码等多种类型,均支持浏览器直接使用、快速出图与文件导出,特别适合零基础用户快速搭建个人网站、落地页或企业官网。
1234 157
|
4天前
|
编解码 Linux 数据安全/隐私保护
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
236 138
|
7天前
|
存储 安全 固态存储
四款WIN PE工具,都可以实现U盘安装教程
Windows PE是基于NT内核的轻量系统,用于系统安装、分区管理及故障修复。本文推荐多款PE制作工具,支持U盘启动,兼容UEFI/Legacy模式,具备备份还原、驱动识别等功能,操作简便,适合新旧电脑维护使用。
517 109