社区应用 最新帖子 精华区 社区服务 会员列表 统计排行 社区论坛任务 迷你宠物
  • 4006阅读
  • 1回复

JAVA代码应该流畅和结构化

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
说明:为了使逻辑更易懂,也为了可维护性更高,应该把代码按模块分割,而构成模块的类的方法,原则上只能有一个入口和一个出口。另外,关于嵌套的深度和模块的行数,也应该控制在一眼就能看清楚的程度上。 jHkyF`<+  
3n.+_jQ>s  
  就Java语言来说,有如下的几点需要在编码的时候特别留意。 th.M.jas  
k1^V?O  
  ① switch的case,default部分原则上必须以break终止 S`pF7[%rp  
!6XvvTs/<  
  如果不用break来终止的话,必须代之以编码规约中既定的注释。但是,如果swich或者if/else需要反复进行,就需要重新考虑是不是应该使用多态。 t Y:G54d=_  
$Qn& jI38  
  ② 处理途中只允许返回异常,返回方法中不允许把异常和return混杂在一起。 9O),/SH;:  
g>6:CG"  
  处理途中发生的错误,原则上都要使用异常来返回。例如,在对参数进行检查时发生异常时,要抛出IllegalArgumentException。在一本程序里,把错误一会儿用异常抛出,一会儿又用返回值(返回ERROR等)返回,往往是程序混乱的根源。必须在设计阶段明确方针,避免这种混乱。 kbfuvJ>  
[b7it2`dl  
  ③ finally中,不要写return。 B]'e$uyL7  
q6;OS.f  
  例: KcIc'G 9  
+ $k07mb\  
  ① switch中需要考虑的要点   Int dd = 0;  O]e6i%?  
  Switch(status) { )HJK '@  
  case ‘ A’ : 7^kH8qJ)  
  dd = 9; RtW4 n:c  
  break; //OK:正确,用break终止 > [Xm|A#  
  case ‘ B’: M?E9N{t8)a  
  dd++; _Ct}%-,4  
  /* FALL THROUGH */ //OK:有意不使用break文,插入了规定的注释 H "Q(2I  
  case ‘ C’: ggrI>vaw  
  dd++; //ERROR:没有插入注释,明显是缺少break的Bug jG+T.  
  default: y,'FTP9?  
  dd = -1; <h'8w  
  break; //OK:default里也没有忘记break +<)tql*  
  } 9|J8]m?x  
  ② 用异常处理来返回错误   If (value == null) { kA1RfSS  
  throw new IllegalArgumentException(); //OK:不使用return,用抛出异常的方式返回错误 1k!D0f3qb  
  } y\[L?Rmd  
  ③ 在finally块中,对返回值有影响的情况   Int value = 1; .(`(chRa}  
  Try{ cj$,ob&DX  
  return value; -0A@38, }  
  } finally{ l0gH(28K  
  value = 4; 6tOP}X  
  return value; //ERROR:因为finally块是肯定会被执行到的,所以在try里本来想 "AT&!t[J  
  //返回1,而最终结果永远是4 y.jS{r".  
  } QH& %mr.S  
  //OK:如果在这里写return的话,出口就只有一个了。 qsI{ b<n  
  补充说明 多态的使用 |!$ Q<-]f  
p])D)FsMB  
  sweitch或者if/else的多次反复,往往造成程序难懂,可维护性下降。建议声明Interface或者abstract class,通过多态来解决。 {&u Rd?(  
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
发帖
27
铜板
29
人品值
21
贡献值
0
交易币
0
好评度
27
信誉值
0
金币
0
所在楼道
学一楼
只看该作者 1 发表于: 2010-10-27
Java简介
Java简介 -sP9E|/:'3  
  Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。 q A.+U:I8  
  Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.4,最近版本为Java1.7。 |c<XSX?ir  
Java分为三个体系J2SE(Java2 Standard Edition),J2EE(Java 2 Platform,Enterprise Edition),J2ME(Java 2 Micro Edition)。 CKJAZ2  
更多免费技术文章和技术讲座视频请参考www.ascenttech.cn 4#TnXxL  
描述
快速回复

您目前还是游客,请 登录注册
欢迎提供真实交流,考虑发帖者的感受
认证码:
验证问题:
3+5=?,请输入中文答案:八 正确答案:八