Static methods come in handy when we want to share information between objects of a class or want to represent something that is related to the class itself, and not to any specific object.
, .
, Message::listmessages() :
$messages = Message::listmessages($args);
Message, . , , Message
$message->listmessages() :
$message = new Message();
$messages->$args = $args
$messages= $message->listmessages();
, Message.