注解?

中秋这两天由于回家了,所以一直没有上网额……


恩,在这里先简单说一下最后一个问题吧!
其实这个问题,楼上的童鞋已经回答的很正确了~
如果你还是觉得不容易理解的话,那你可以执行一下这三行代码,你就明白了:
[code=java]System.out.println("byte.class.getName() = " + byte.class.getName());
System.out.println("Byte.TYPE.getName() = " + byte.class.getName());
System.out.println("Byte.TYPE.getClass().getName() = " + Byte.TYPE.getClass().getName());[/code]


好了,下面解释一下前面的几个问题吧
其实这几个问题问的有点太深了……我也是百度了半天,才得到答案的


第一个问题:为什么枚举类的元素中有values()方法,这个方法是哪里来的呢?
(注:这个问题的表述可能会非常的绕,请做好心理准备多看几遍~)
首先,通过API我们可以知道,Enum类的定义是:Enum<E extends Enum<E>>
在这里我们就可以看到,Enum类中定义了一个泛型,也就是后面的E extends Enum<E>
泛型的含义我就不需要多说了吧,也就是说,这个枚举类中的所有元素,都应当是E这个类的对象


然后,在老师的讲解中,我们还可以知道,所有的枚举类都是继承自Enum这个类的
但是这里就会出现一个问题,我们可以看一下你对WeekDay这个枚举类的定义
[code=java]public enum WeekDay {……}[/code]
很明显,如果WeekDay是继承自Enum类的话,那么它的泛型是什么呢?
也就是说,WeekDay这个枚举类中的所有元素,都应当是什么类的对象呢?


,我们在定义enum类的时候,并没有指定后面的这个泛型
我们可以执行下面这行语句,看看枚举类的元素的父类到底是什么类:
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值