class FileCopier
{
private $cf;
private $df;
public FileCopier($copyingFiles, $destFiles)
{
$this->cf = $copyingFiles;
$this->df = $destFiles;
}
// тут другие методы…
}
class FileRemover extends FileCopier
{
private $delFile;
public FileRemover($copyingFiles, $destFiles)
{
parent($copyingFiles, $destFiles);
// тут реализую своё…
}
// тут другие методы…
}
Есть одна херня: в классе FileRemover мне не нужно использовать такой конструктор(с 2мя параметрами), который описан высше.
Мне нужен конструктор
public FileRemover($delFiles)
{
parent($copyingFiles, $destFiles); // не пойдет, потомучто эти параметры нужно получить извне…
}
И с этим затыком мне нужно обязательно реализовать конструктор предыдущего родительского класса. Но я не реализую его, потомучто планирую брать на вход лишь один параметр, которого мне только и нужно…
Я могу тупо унаследовать конструктор родителя и н епарится: просто второму параметру присвоить null. Но мне нужно явно это все различать.
Вроде можно также в родительском обьявить еще один конструктор на вход с 1м параметром - и его тупо заделлегировать в дочернем. Но тут портится вся логика: родителю не нужен конструктор дочернего ксласса - каждый клас должен обладать своим конструктором… ибо выйдет каша и бардак.
Подойдет ли тут какойто паттерн типа адаптера? Интересно как его реализовать… тогда.. В голову чтото не лезит…