我是 OOP 的新手,我有一个非常基本的问题,但我无法以简洁的方式解释它,因此很难找到答案。
我有一个支持信用卡处理的应用程序,我想抽象处理能力,以便可以添加其他提供程序(linkpoint、authorize.net 等)。我想我想做的是创建一个看起来像这样的简单类:
class credit {
function __construct($provider){
// load the credit payment class of $provider
}
}
然后我会让每个提供者扩展这个类,例如
class linkpoint extends credit { }
但我真的想使用信用等级更像是一个界面,有点。我不想要一个信用对象,我想做类似的事情:
$credit = new credit('linkpoint');
然后我希望 $credit 成为链接点类的一个实例。或者至少,我希望所有方法都执行链接点类中定义的代码。
解决这个问题的最佳方法是什么?或者有更好的方法吗?