Betrachten Sie zum Beispiel folgenden Code:
%Vor%Sollte die zweite Methode auch @drows im Doc Block haben?
Wie wird es im Vergleich zu Java verwendet, wo es ein Schlüsselwort "throws" gibt?
@throws sollte nur im docBlock der Methode platziert werden, in der die Ausnahme ausgelöst wird. Wenn Sie es auf den Stapel stellen, ist es überflüssig und wäre eine Verletzung des DRY Prinzips!
In Java können Sie zwischen @throws und @exception wählen. Sehen Sie hier
Übrigens: Sie werfen die falsche Art von Ausnahme. Sie sollten eine OutOfBoundsException auslösen. Ansonsten ist es eine Verletzung von POLA . \ InvalidArgumentException ist für einen unerwarteten Argumenttyp vorgesehen.