Расскажите, зачем, вообще, нужны статические классы и методы, окромя, того, что несколько созданных объектов могут пользоваться одной общей переменной. Когда следует использовать статические члены и методы, а когда нет?
Статические члены и методы можно использовать без создания экземпляра класса. Сравни PHP: <?php class a { function preved() { echo "PREVED!"; } } class b { static function preved() { echo "PREVED!"; } } $a = new a; $a -> preved(); b::preved(); ?>
PHP: <?php class Apple { public static $Age = 18; public static $Name = "Arthur"; const Sex = "Male"; } // Изменим имя, которое дала мать Apple::$Name = "Dima"; // Какого я пола? echo Apple::Sex; // Попробуем его сменить Apple::Sex = "Female"; //!! Нельзя ?>
Часто интерфес для работы с БД делают статическим классом. Ненадо создавать экземпляры, не тратится лишняя память. Кстати, статика работает быстрее.