OMG, Jave的JMenu居然有433个方法
Java的Swing类库中有一个类叫JMenu,这个类上面有7层的继承,加上所有被继承下来的方法,这个类一共有433个方法,虽然,很多类是从上面继承下来的,而它自己的方法并没有定义太多的方法,不过,继承体系过深,在底层类上要想知道所有的继承下来的东西并不是一样容易的事情。这个例子展示了一个滥用代码重用的反面案例。我个人认为我们应该反思一下滥用面向对象的作法。
要把Java一个类所有的方法例出来并不是一件难事,使用Javascript 利用Firefox浏览器所支持的Package来穷举JMenu的方法可以很方便的列出所有的方法。
下面是这段Javascripts程序:
jmenu = new Packages.javax.swing.JMenu( );
methods = jmenu.getClass( ).getMethods( );
regx = /j[^( ]+([^)]*)/; // match just the method
for (var i = 0, jsArray=[], name = "";
...
陈皓(左耳朵耗子)
陈皓(1976年-2023年5月13日),男,MegaEase创始人、资深技术专家、程序员。2023年5月13日,陈皓心梗逝世,享年47岁。(来源:百度百科)
公告
由于酷壳(coolshell.cn)是托管在外网,在国内访问较慢,浏览体验不是很好,且怕后续域名或主机未续费的话,整个博客站点的资源就无法访问了,故爬取了酷壳网的整站的内容,使用 Hexo 重新生成了一个镜像站。
本站所有内容均为酷壳网内容镜像,未对正文内容调整,仅对部分内容正文排版及内容资源文件的URL引用做了调整,所有内容版权归原作者所有。
分类
标签
HTTPS cache J++ CSS3 BT 系统管理 Sort Glassfish bug IDE IE ASP W3C 伪装 STL DIP MapReduce Pylot Thin Provisioning WCat 评论 Bjarne Stroustrup Ruby XML mvcc Issue 9 dygraphs JWT QUIC API设计 vi MongoDB Coding timestamp Eclipse GC Gist Apache 代理 实习生 InI FAQ Kinect Sixth Sense Grinder email brainfuck 验证码 Sun thread Java Fast Recovery Redirections Jon Lech Johansen Bret Victor VB.NET etcd debugfs Hash Subversion Open Source Bitcoin ReCAPTCHA Microsoft Hibernate cas Unicode Oracle C++ Apache JMeter Unicode High Availability wtfjs.com Quora VideoCapture Bash Android CVS Polyglot Division of Labour Demo Spring Justin Frankel Linux Fantom 安全 AES 桌面应用 WinAmp
网站资讯
文章数目 :
740
本站总字数 :
1304.8k
本站访客数 :
本站总访问量 :
最后更新时间 :