我在思考如何构建我的类和对象时遇到了一些问题。在下面的代码中,我使用接口来定义我的类方法,但我还想将数据库连接传递给我的构造函数,以便类可以使用该连接进行工作。我按照下面的代码编写构造函数放置在我的类中,接口中的方法是否正确?
interface IDataItem
{
public function saveItem(Item $theItem);
}
class DataItem implements IDataItem
{
public function __construct(Database $database)
{
$this->database = $database;
}
public function saveItem(Item $item)
{
//save the item
}
}
$db = new Database(); //from a database class
$dataItem = new DataItem($db);
$dataItem->saveItem($anItem);