由于每个类的开发人员和时期不通,现在的求是在一个Object 容器里面,用一次都需要大量的instance of。这代码冗余太高了。

比如 有 3个类的3个对象在一个容器里面。我想要根据不通的类型,获取不通的id,每个id 名称还不一样😂

  1. public class BankCard {
  2. public String idCode;
  3. }
  4. public class BusCard {
  5. public String idNo;
  6. }
  7. public class MifareCard {
  8. public String id;
  9. }

解决方法

1.实现一个工具方法,在里面用泛型实现

没有代码入侵性,代码显然适合重构。但是后面可以快速修改和删除。容易扩展。

2.修改继承一个基类

代码入侵性大,但是符合面向对象思想。且只能单继承。不容易扩展。

3.修改实现一个接口

代码入侵性较小,可以很好扩展。扩展次之。

后面对整体的设计来看,根据时间的长久,需要考虑加的点是不是需要扩展,以此选择 2 3 1。不敢乱改,显然1比较妥当。还有没有更好的办法?