老师 支付宝支付、微信支付、各大网银支付这种是用抽象类还是接口?
来源:3-8 怎么避免抽象类和接口选择失误呢?
春去_秋来
2020-09-09
老师 支付宝支付、微信支付、各大网银支付这种是用抽象类还是接口?可以说下怎么组织代码
写回答
1回答
-
张勤一
2020-09-09
春去秋来你好:
首先来说,对于这个功能使用抽象类和接口都是可行的(其实都适用的情况还是非常多的)。那么,为什么呢?可以考虑:
抽象类:把共同的功能放到抽象类中去实现,不同的功能放到抽象类中做定义(抽象方法),而没有实现;这当然可行;那么,你可能会说,通用的方法不就没有实现了吗?当然不是,java8 的默认方法就可以了呀!
接口:你需要定义一个支付 Service 接口,然后定义多个实现类,每个实现类去处理一种支付方式,这当然也是非常好的,可行的。
代码组织也是很简单的,一个抽象类的定义或一个接口的定义,每一个具体的支付功能都有自己的实现类就可以了。
我是勤一,致力于将这门课程的问答区打造为 Java 知识体系知识库,Java 知识体系 BBS!共同建造、维护这门课程,我需要每一个你!
112020-09-09
相似问题
功能设计问题(设计模式)
回答 2
工作中用过的接口和抽象类
回答 2
老师,为什么这里name不是浅拷贝?
回答 1
抽象父类@Autowired注入bean
回答 1
redis get
回答 1