如何强制子类使用父类中的方法


how to force a child class to use a method from the parent class

我有一个类,它使用了所有子类都需要使用的方法。如何强制所有子类使用该方法?抛出接口?

编辑:我使用的是php。我的意思是:我有一个名为toLower()的方法,我的数据库中所有列都是大写的,每次从数据库中获取对象时,我都需要使用toLower)方法使对象属性小写。我希望能够强制客户端用户在获取结果时使用该方法。

使用PDO与数据库接口时,可以使用PDO::ATTR_CASE强制列名为PDO::CASE_*常量指定的特定大小写,例如

$db = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
    PDO::ATTR_CASE => PDO::CASE_LOWER
));

如果出于某种原因,你想在映射层内这样做,只需使用

  • array_change_key_case—返回一个数组,该数组包含输入中所有键的小写或大写

在将列映射到对象之前,在返回的行上:

$row = array_change_key_case($row, CASE_LOWER);

不知道该对剩下的问题部分回答什么。为了得到更好的答案,请更新您的问题并显示相关的代码位。