论坛首页 Java企业应用论坛

探讨下接口包含内部类或者内部接口的具体作用和实际用途

浏览 6264 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (3)
作者 正文
   发表时间:2011-08-30  
quxiaoyong 写道
楼主的纯代码会被投隐藏的。。

我都上过几次当了。。


被投隐有什么坏处吗??
0 请登录后投票
   发表时间:2011-08-30  
我想问下,为什么不用enum类型,反而自找麻烦CLEANUP_TYPE继承enum,再实例化?
enum完全可以完成你代码里面
R:我也不太清楚为什么这么做。

这段代码应该是基于Java1.5之前的版本对枚举类型的定义。
不过这里的枚举类型定义CLEANUP_TYPE完全应该做为一个顶层类型出现,而且这个枚举类型的名字太过邪恶了,最好定义为CleanupType。

对嵌套类更精彩的讲解可以参考:
<<Effective Java II>>中的第22条--优先考虑静态成员类章节。

R:thx,我这里想知道的是接口里面定义内部类的作用,22条基本上是说嵌套类的。
0 请登录后投票
   发表时间:2011-08-30  
Null Object模式会用到
0 请登录后投票
   发表时间:2011-08-30   最后修改:2011-08-30
普通类只能单一继承
内部类存在就是为了多继承
0 请登录后投票
   发表时间:2011-08-30  
接口中包含内部类/内部接口,保持耦合.比如Map中定义的实体类[Entry].

程序设计的时候要松散耦合,如果这个接口专门服务于某一接口,比如Map中为map的实体类,那么有一种耦合关系,那么可以定义为内部类/接口.
0 请登录后投票
   发表时间:2011-08-31  
个人觉得内部类只能在类的内部使用,而内部接口只能被内部类实现。
map类的内部Entry类是用来表示key和value关系的。
不知道说得对不对。
0 请登录后投票
   发表时间:2011-08-31  
qq83833224 写道
我想问下,为什么不用enum类型,反而自找麻烦CLEANUP_TYPE继承enum,再实例化?
enum完全可以完成你代码里面

或许是反编译出来的,源码可能就是enum
0 请登录后投票
   发表时间:2011-08-31  
这种帖子也被投隐藏帖,天理何在,又有多少人能够说清楚,谁投了应藏贴,站出来说说看。。。 


0 请登录后投票
   发表时间:2011-08-31  
mmddonkey 写道
qq83833224 写道
我想问下,为什么不用enum类型,反而自找麻烦CLEANUP_TYPE继承enum,再实例化?
enum完全可以完成你代码里面

或许是反编译出来的,源码可能就是enum


代码确实是我反编译的。反编译的代码和源码不是一样的吗?
我用的是eclipse反编译插件jadclipse。
0 请登录后投票
   发表时间:2011-09-01  
Cross_Lee 写道
mmddonkey 写道
qq83833224 写道
我想问下,为什么不用enum类型,反而自找麻烦CLEANUP_TYPE继承enum,再实例化?
enum完全可以完成你代码里面

或许是反编译出来的,源码可能就是enum


代码确实是我反编译的。反编译的代码和源码不是一样的吗?
我用的是eclipse反编译插件jadclipse。

你可以自己写个枚举再返编译试试,应该是不同的
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics