Класс работы с базой данных, где все методы (соединение, разрыв связи, создание, таблиц, уничтожение и так далее) используют общий $link.
Жалко что что константы и переменные имеют такую разницу, думал что они только "неизменностью" отличаются
Какой нахрен reflection. Я говорю, что если я создаю класс у которого свойства $a и $b, то это ещё совсем не значит, что нужно наличие getA() и getB(). Инкапсуляция называется. С с __get и __set у тебя тот самый «бестолковый bean».