Exception löst man aus, wenn man ein Ereignis innerhalb der Klasse selbst nicht lösen kann.
In Deinem Beispiel würde ich das nicht machen: Passwort falsch oder Nutzername nicht existent sind beides Dinge die ich handlen kann: Erneut abfragen. Sowas gibt man über ein Ergebnis zurück.
Eine Regel für das Auslösen von Exceptions gibt es wohl nicht, aber in Deinem Beispiel würde ich beispielsweise eine auslösen, wenn die Klasse keine Datenbankverbindung hat obwohl das eine Voraussetzung für das Funktionieren der Klasse ist.