Говно.
1) Я не буду говорить про кодстайл, благо он фиксится одним сочетанием клавиш...
2) Побочные эффекты (die)
3) Куча лишних вложенностей (if if if if)
4) Полностью нарушен принцип open/close (расширяться через наследование? Серьёзно?)
5) Куча избыточного кода. Например:
call_user_func_array(array($this->query, 'bind_result'), $params);
Легко переписывается как:
$this->query->bind_result(...$params);
6) Ну и состояние, и его мутабельность, которой не должно быть, конечно же.
На помойку, короче.