文档章节

Java之实现枚举原理

1527
 1527
发布于 2015/10/10 23:10
字数 116
阅读 27
收藏 0

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

public class EnumTest {

	public static void main(String[] args) {
		
		WeekDay weekDay = WeekDay.MON;
		System.out.println(weekDay.nextDay().toString());
	}
}


public class WeekDay {

	private WeekDay(){}
	
	public final static WeekDay SUN = new WeekDay();
	public final static WeekDay MON = new WeekDay();
	
	public WeekDay nextDay(){
		
		if(this==SUN){
			return MON;
		}else{
			return SUN;
		}
	}
	
	public String toString(){
		
		return this ==SUN?"SUN":"MON";
	}
}

另一种实现
public abstract class WeekDay {

	private WeekDay(){}
	
	public final static WeekDay SUN = new WeekDay(){
		
		public WeekDay nextDay(){
			return MON;
		}
	};
	public final static WeekDay MON = new WeekDay(){
		public WeekDay nextDay(){
			return SUN;
		}
	};
	
	public abstract WeekDay nextDay();
	
	public String toString(){
		
		return this ==SUN?"SUN":"MON";
	}
}


© 著作权归作者所有

上一篇: java枚举之简要
下一篇: java之可变参数
1527

1527

粉丝 9
博文 121
码字总数 51620
作品 0
成都
程序员
私信 提问
加载中

评论(0)

枚举类型可以实现接口,以及枚举类型原理

今天在看 《漫谈设计模式》的时候,看到状态模式的时候,居然发现,枚举类型原来也是可以 实现接口的。 真是涨见识了。 而且 枚举类型的静态属性也是可以 实现方法的, 只是如果没有 实现接口...

之渊
2018/07/24
134
0
JDK源码学习笔记——Enum枚举使用及原理

一、为什么使用枚举 什么时候应该使用枚举呢?每当需要一组固定的常量的时候,如一周的天数、一年四季等。或者是在我们编译前就知道其包含的所有值的集合。 利用 public final static 完全可...

osc_wa6zijqd
2019/01/08
4
0
Java基础15:深入剖析Java枚举类

更多内容请关注微信公众号【Java技术江湖】 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM、SpringBoot、MySQL、分布式、中间件、集群、Linux、网络、多线程,偶...

osc_84itep82
2019/04/07
5
0
【Java基础】关于枚举类你可能不知道的事

谈谈枚举 [TOC] 如果一个类的对象个数是有限的而且是不变的,我们通常将这样的类设计成枚举类。 1. 枚举类的定义 枚举类有如下特点: 枚举类默认是使用final关键字修饰的,所以枚举类不能被继...

osc_6pr34qkg
2019/09/24
5
0
Java中的枚举--Enumeration

  之前并没有注意到枚举这个知识点,因为之前在项目中并没有使用过枚举,可能是项目并不是很复杂的原因吧,今天看张孝祥老师的讲解,觉得,这个枚举真的有很多值得学习的地方,探究一下枚举...

osc_c0qub4nv
2019/03/30
1
0

没有更多内容

加载失败,请刷新页面

加载更多

IP地址正则表达式

提取一段内容中的所有IP地址 ((2(5[0-5]|[0-4]d))|[0-1]?\d{1,2})(.((2(5[0-5]|[0-4]d))|[0-1]?\d{1,2})){3} 判断字符串是否是IP地址 ^((2(5[0-5]|[0-4]d))|[0-1]?\d{1,2})(.((2(5[0-5]|[0-4......

哆啦D梦幻
30分钟前
29
0
CDH在yarn上运行程序乱码

参考文章:CDH在yarn上运行程序乱码 安装完成CDH后,在yarn上不管是使用hive运行mapreduce还是spark,中文全都会乱码。 1. linux的环境变量设置字符集 vi /etc/profile export LANG=zh_CN.UT...

osc_40usjisk
30分钟前
9
0
公积金无租房备案提取如何办理?(以成都为例)

  无租房备案是什么?   首先你要知道租房备案是什么?简单来说就是房东想要对外租房,需要到房管局办理相关手续,   如果你要以租房的名义提取公积金需要提供与房东签订的合同等材料后...

osc_3aqbiyys
31分钟前
11
0
公积金状态封存怎么解封?

  前言   公积金的缴存状态一般有2种,正常和封存,如下截图         公积金状态为封存是什么意思?   指职工因为各种原因导致住房公积金缴存中断,其住房公积金账户无法转移且又...

osc_51airx3z
32分钟前
12
0
你应该知道的公积金基础知识科普

  公积金是什么?   简单来说公积金全称为住房公积金,是一种国家法律规定的住房保障制度,也是普通工薪族的一种福利   公积金的用途?   可用于贷款买房,租房,还房贷,房屋大修等...

osc_u9wft6hh
33分钟前
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部