对于多个类型相似的操作,如何实现统一处理,简化操作。
例如,现在由多个类定义,类定义中都包含客户编号,但是缺少客户名称。
如果采用常规的方式,我对于需要展示客户名称的场景,需要对每个类的每个场景去处理,来根据客户编号获取客户信息,并设置客户名称。
但是这种方式对存在很多的冗余代码。
这种情况就可以用泛型处理。
泛型中想要对属性操作有两种方式:1.通过继承同一个基类。2.通过反射来操作属性。
这里我们可以直接通过继承同一个基类的方式实现。
首先我们定义一个包含需要处理和使用的公共属性的基类,这里需要客户编号和客户名称。
然后通过限定泛型extend 该基类来定义方法,处理逻辑即可。
代码可参考如下:
public <T extends BaseFruit> T handle(T fruit){
return null;
}