上一页 1 2 3 4 5 6 7 8 9 ··· 13 下一页
摘要: 将局部变量的作用域最小化,可以增强代码的可读性和可维护性,并降低出错的可能性。 要使局部变量的作用域最小化,最有力的方法就是在第一次使用它的地方声明。 如果过早的对变量进行声明,首先会造成混乱,对于试图理解程序功能的读者来说,这又多了一种只会分散他们注意力的因素。等到 用该变量的时候,读者可能已经记不起该变量的类型或者初始值了。其次,过早的声明局部变量不仅会使它的作用域过早的扩展,而且 结束得也过... 阅读全文
posted @ 2015-05-11 10:19 wangliyue 阅读(106) 评论(0) 推荐(0)
摘要: 简而言之,要为API编写文档,文档注释是最好,最有效的途径。对于所有可导出的API元素来说,使用文档注释应该被看作是强制性的。要 采用一致的风格来遵循标准的约定。记住,在文档注释内部出现任何的HTML标签都是允许的,但是HTML元字符必须要经过转义。 阅读全文
posted @ 2015-05-11 09:27 wangliyue 阅读(115) 评论(0) 推荐(0)
摘要: 如果一个方法的返回值类型是集合或者数组 ,如果在方法内部需要返回的集合或者数组是零长度的,也就是没有实际对象在里面, 我们也应该放回一个零长度的数组或者集合,而不是返回null。如果返回了null,客户端程序员就要检测返回的是不是null,然后才能 进行下一步操作,否则就会引发NullPointException。但是如果是返回的的是空数组或者集合,就不会再后续的使用这个对象上,引发 空指针异常,... 阅读全文
posted @ 2015-05-08 15:30 wangliyue 阅读(130) 评论(0) 推荐(0)
摘要: Java 1.5发行版本中增加了可变参数方法。可变参数方法接受0个或者多个指定类型的参数。 可变参数机制通过先创建一个数组,数组的大小为在调用位置所传递的参数数量,然后将参数值传到数组中,最后将数组传递给方法。 这样由于可变参数的方法,可变参数时借助数组实现的的,所有调用可变参数的方法时,我们可以传入若干个参数,也可以传入保存 有若干个参数的数组。 对于可变参数使用,比较典型的一个方法是:Arra... 阅读全文
posted @ 2015-05-08 11:24 wangliyue 阅读(210) 评论(0) 推荐(0)
摘要: 重载:两同一不同 两同:两个方法在同一个类中 ,两个方法同名 一不同:两个方法的参数列表不同假设有这样一个类 1 public class TestWhichMethodIsUsed { 2 3 public static void testMethod(List list... 阅读全文
posted @ 2015-05-07 15:30 wangliyue 阅读(215) 评论(0) 推荐(0)
摘要: 先明确:方法签名由方法名称和一个参数列表(方法的参数的顺序和类型)组成,不包括返回值类型。 谨慎的选择方法的名称。 不要对于追求提供便利的方法。 避免过长的参数列表。目标是四个参数,或者更少。 有三种方法可以缩短过长的参数列表: 1.把过长参数列表的方法分解成多个方法,每个方法只需要这些参数的一个子集。 2.创建辅助类,用来保存参数的分组,这些成员类一般是静态成员类。如果一个频繁出现的参数序列可以... 阅读全文
posted @ 2015-05-07 15:07 wangliyue 阅读(152) 评论(0) 推荐(0)
摘要: 使Java使用起来如此舒适的一个因素在于,它是一门安全的语言。这意味着,它对于缓冲区溢出,数组越界,非法指针以及其他的内存破坏 都自动免疫,而这些错误却困扰着诸如C和C++这样的不安全语言。在一门安全的语言中,在设计类的时候,可以确切的知道,无论系统的 其他部分发生什么事情,这些类的约束都可以保持为真。对于那些“把所有的内存当成一个巨大的数组来看待”的语言来说,这是不可能的。 有一种情况进行保... 阅读全文
posted @ 2015-05-07 14:25 wangliyue 阅读(481) 评论(0) 推荐(0)
摘要: 绝大多数方法和构造器对于传递给他们的参数值都会有某些限制。例如索引值必须是非负数,对象引用不能为null,等等。 应该在文档中清楚地指明所有这些限制,并且在方法体的开头出检查参数,以强制施加这些限制。这是“应该在发生错误之后尽快检测出错误” 这一普遍原则的一个具体情形。 如果传递无效的参数值给方法,这个方法在执行之前先对参数进行了检查,那么它很快就会失败,并且清楚的抛出适当的异常。如果没有检查它 ... 阅读全文
posted @ 2015-05-06 15:57 wangliyue 阅读(780) 评论(0) 推荐(0)
摘要: 《Effective Java》第二十九条 阅读全文
posted @ 2015-05-06 10:36 wangliyue 阅读(129) 评论(0) 推荐(0)
摘要: 如第二十五条所述,参数化类型是不可变的。类型Type1和Type2而言,不管Type1与Type2的关系,List既不是List的子类型,也不是也不是它的超类型。那么按理来说我们声明了 一个List的变量,应该只能把Object类型的对象放入其中,但是我们知道可以把Object的子类放入其中。 同样我们声明了一个List的变量,不仅仅可以把Number类型的对象放入其中,也可以把Integer和L... 阅读全文
posted @ 2015-05-06 09:17 wangliyue 阅读(158) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 9 ··· 13 下一页