仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 542|回复: 8
打印 上一主题 下一主题

[学习教程] 了解下JAVA的Effective Java (2) 碰到多个机关器参数时要思索用构建器

[复制链接]
再现理想 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:00:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
j2EE和asp比较,其实也没什么比的,原因和我上面说那些比较差不了多少,也是稳定性,安全性,J2EE比asp高,速度上比不过asp,asp也是延续着它的拖拽控件的方法,提高速度。
1、背景
关于有多个可选参数的类,我们一样平常经由过程甚么举措传送参数呢?这里供应了三种举措:
①.堆叠机关器形式
②.JavaBeans形式
③.Builder构建器形式
上面我们来剖析一下以上三种办法的上风及坏处。
2、堆叠机关器形式
堆叠机关器形式中第一个机关器中只要需要参数,第二个机关器有一个可选参数,第三个机关器中有两个可选参数,顺次类推,最初一个机关器中包括一切可选参数。这类计划可行,可是有较年夜缺点。
弱点:当有良多可选参数的时分,客户端代码很难编写,并难以浏览,假如客户端不当心倒置了个中两个参数的按次,编译器也不会报错,可是程序在运转时会呈现毛病的举动。
  1. /*
  2. *机关器形式
  3. */
  4. publicclassNutritionFacts1{
  5. privateinta1;//必需
  6. privateinta2;//必需
  7. privateinta3;//可选
  8. privateinta4;//可选
  9. publicNutritionFacts1(inta1,inta2){
  10. this(a1,a2,0);
  11. }
  12. publicNutritionFacts1(inta1,inta2,inta3){
  13. this(a1,a2,0,0);
  14. }
  15. publicNutritionFacts1(inta1,inta2,inta3,inta4){
  16. this.a1=a1;
  17. this.a2=a2;
  18. this.a3=a3;
  19. this.a4=a4;
  20. }
  21. publicintgetA1(){
  22. returna1;
  23. }
  24. publicvoidsetA1(inta1){
  25. this.a1=a1;
  26. }
  27. publicintgetA2(){
  28. returna2;
  29. }
  30. publicvoidsetA2(inta2){
  31. this.a2=a2;
  32. }
  33. publicintgetA3(){
  34. returna3;
  35. }
  36. publicvoidsetA3(inta3){
  37. this.a3=a3;
  38. }
  39. publicintgetA4(){
  40. returna4;
  41. }
  42. publicvoidsetA4(inta4){
  43. this.a4=a4;
  44. }
  45. publicStringtoString(){
  46. returna1+"-"+a2+"-"+a3+"-"+a4;
  47. }
  48. publicstaticvoidmain(String[]args){
  49. NutritionFacts1nf=newNutritionFacts1(1,2,3,4);
  50. System.out.println(nf);
  51. }
  52. }
复制代码
检察本栏目更多出色内容:http://www.bianceng.cn/Programming/Java/
<p>
什么时候上述的三种开发工具能和三为一,什么时候java的竞争力才更强,才有机会拉拢更多的程序员投入到对java的开发上,因为到时的开发工具将会比.net的更简单。还有一点也很关键,什么时候java推出的jsf能成为真正意义上的标准。
沙发
发表于 2015-1-19 16:36:28 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
飘飘悠悠 该用户已被删除
板凳
发表于 2015-1-24 14:50:33 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
admin 该用户已被删除
地板
发表于 2015-2-1 17:03:28 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
金色的骷髅 该用户已被删除
5#
发表于 2015-2-7 10:28:49 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
海妖 该用户已被删除
6#
发表于 2015-2-21 18:32:53 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
莫相离 该用户已被删除
7#
发表于 2015-3-6 20:55:24 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
只想知道 该用户已被删除
8#
发表于 2015-3-13 08:27:44 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
简单生活 该用户已被删除
9#
发表于 2015-3-20 17:25:56 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 08:05

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表