php - Abstract class calling a method from the wrong child class -


i have abstract class extended several other classes, each abstract method called child_save_changes().

one of methods in template class called on_save_changes(), , whenever user clicks 'submit', method called page.

the on_save_changes() method first sets class variables required validating/saving, calls child_save_changes(), , handles redirection referring page.

the problem is, because i'm calling on_save_changes() via callback page, doesn't know child class call abstract method child_save_changes() from, , it's picking first 1 finds.

it seems inefficient repeat code in each child_save_changes() method, i'm wondering if has come across similar scenario in past, , actions took fix issue? thanks.

it sounds me using static methods. otherwise problem describe cannot reasonably occur.

you wrote, "on_save_changes() not know child class call abstract method child_save_changes() from". ordinary (i.e., non-static) methods not called classes, called objects. , every object knows class belongs to, , there can never confusion method meant called.

static methods, on other hand, not designed work inheritance hierarchies that. recommend refactoring code , turn them non-static ones, if not want that, may able make work using late static binding.


Comments

Popular posts from this blog

image - ClassNotFoundException when add a prebuilt apk into system.img in android -

I need to import mysql 5.1 to 5.5? -

Java, Hibernate, MySQL - store UTC date-time -