当我们项目中所用的方法的参数和返回类型应遵循以下原则:
1. 声明方法的参数类型时,应尽量指定最弱的类型,最好是接口而不是基类。
原因:这样使方法更加灵活,适用于更大范围的情形。
2. 相反,一般最好是将方法的返回类型声明为最强的类型(以免受限于特定的类型),有时,你想在不影响调用者前提下修改方法的内部实现。如果某个方法返回一个List<String>对象,就可以想在未来的某个时候修改它的内部实现,以返回一个String[]。如果希望保持一定的灵活性,以便将来更改方法返回的东西,就选择一个较弱的返回 类型。但注意的是在较弱的类型中选择最强的类型。
原因:确保调用者在调用方法时有尽量大的灵活性,使方法的应用范围更大。