hohoho
Новичок
Поясните некоторую особенность работы с классами
В общем проблема такая, точнее не проблема, а хотелось бы что бы было так:
Создаётся экземпляр класса, который в зависимости от некоторых условий создаёт какой-либо класс, который является его потомком (в нём могут быть переопределённые методы родительского класса ) и возвращает экземпляр класса потомка.
Для проверки работоспособности такой конструкции я написал примерно следующее:
Но это всё счастье, естественно не работает. Кому не лень объясните почему, и как можно реализовать подобную конструкцию хотя бы в двух словах. Просто мне даже интересно.
В общем проблема такая, точнее не проблема, а хотелось бы что бы было так:
Создаётся экземпляр класса, который в зависимости от некоторых условий создаёт какой-либо класс, который является его потомком (в нём могут быть переопределённые методы родительского класса ) и возвращает экземпляр класса потомка.
Для проверки работоспособности такой конструкции я написал примерно следующее:
PHP:
<?php
class parent
{
function parent() {
$child = new child;
return $child;
}
function parent_method() {
echo "Метод родительского класса parent, parent_method()<br />\n";
}
function parent_method_mod() {
echo "Метод родительского класса parent, parent_method_mod()<br />\n";
}
}
class child extends parent
{
function child() {
// some code
}
function child_method() {
echo "Метод дочернего класса child, child_method()<br />\n";
}
function parent_method_mod() {
echo "Переопределённый метод родительского класса parent, parent_method_mod()<br />\n";
}
}
$class = new parent;
$class->parent_method();
$class->child_method();
$class->parent_method_mod();
?>
.