本期,中享思途青岛总部的途途将继续为大家总结推荐那些“偏执却有用的Java编程技巧”,一起来看!文承上期:
6.所有的方法都用 final 声明
你可以告诉我任何你想要的开闭原则,不过那都是胡说八道,我不相信你(可以正确继承我的类),也不信我自己(不会意外地继承我的类)。因此除了接口(专门用于继承)都应该是严格的 final,是的,写成final。
7.所有的变量和参数都用 final 声明
因为我不确定我什么时候,就会无意间重写了某个值,这也是为什么所有的变量和参数都用final声明的原因。
8.重载的时候不要相信泛型
有时候,你觉得你写了一个超级棒的API,但接着出现一群用户,他们只是把一切类型生搬进 Objec 中,直到停止工作,然后他们连接到了错误的方法,并认为这一切是“你的错”!
思考一下这个:
因为,你知道的…你的用户们,他们就像这样:
还有这样的:
所以说,偏执有时候还是有好处的。
9.总是在switch语句里加上default
Switch作为最滑稽的表达式之一,我不知道是该心存敬畏还是默默哭泣。但既然无法摆脱,不如在必要的时候好好地,正确的使用它吧,例如:
因为在当 value=3 被引入到软件中的时候,default 就能发挥作用,使其正常运行,这对 enums 也一样适用。
10.用大括号隔开 switch 的每一个 case 块
switch是最坑爹的语句,任何喝醉了或是赌输了的人都可以在某种语言中使用它。看看下面这个例子:
在switch语句中,为所有的case都只定义了一个作用域。但其实这些case并不是真正意义上的语句,他们更像是标签,而switch就是指向这些标签的goto语句。这意味着变量final int j 可以被任何case访问,不论我们是否有break。看起来并不是很直观。我们可以通过添加简单的花括号为每一个case创建一个新的嵌套的作用域,当然不要忘了在每个 case 的语句块最后加 break。