3.2 DCL01-J不要重用Java标准库的已经公开的标识
不要重用那些在Java标准库中已经使用过的公共的标识、公共的工具类、接口或者包。
当一个程序员使用和公开类相同的名字时,如Vector对后来的维护者来说,他可能不知道这个标识并不是指?java.util.Vector?,并且可能会无意地使用这个自定义的Vector类而不是原有的java.util.Vector类。使得这个自定义的?Vector会遮蔽java.util.Vector类,正如在JLS的6.3.2节中提到的那样。从而会导致不可预期的程序行为。
良好定义的import语句可以解决这个问题。然而,当重用的命名定义是从其他包中导入时,使用type-import-on-demand declaration(详细参见JLS的7.5.2节“Type-Import-on-Demand Declaration”[JLS 2005])会将程序员弄糊涂,因为他需要确定哪一个定义是想要的。另外,因为我们通常会使IDE来自动包括import语句,所以一种常见的操作是在编写代码后才生成这些import语句,但这种做法容易导致错误。在Java包含的import引用路径中,如果在预期的类出现之前出现了一个自定义的类,那么不会进一步搜索,这样就会毫无知觉地使用了错误的类。
【责任编辑:book TEL:(010)68476606】
点赞 0