Null- oder ungültige Argumente: IllegalArgumentException vs. NullPointerException
Ein häufiges Dilemma beim Definieren einer Setter-Methode besteht darin, die geeignete Ausnahme zu bestimmen, die ausgelöst werden soll, wenn a Null-Parameter wird empfangen. Basierend auf der Java-Dokumentation scheinen sowohl IllegalArgumentException (IAE) als auch NullPointerException (NPE) anwendbar zu sein.
IAE vs. NPE: Der Unterschied
NPE wird normalerweise von der Laufzeit ausgelöst, wenn null wird unangemessen verwendet. Im Gegensatz dazu soll IAE ausdrücklich darauf hinweisen, dass ein illegales oder unangemessenes Argument an eine Methode übergeben wurde.
Gründe für die Verwendung von IAE
Für einen Nullparameter in a Setter-Methode ist IAE aus mehreren Gründen der NPE vorzuziehen:
API-Nutzung und Gegenargument
Während einige Teile der Java-API NPE für Nullargumente verwenden, Dieser inkonsistente Ansatz sollte in diesem speziellen Kontext nicht die Verwendung von NPE anstelle von IAE rechtfertigen. Die oben genannten Gründe sprechen stark für die Verwendung von IAE für illegale Nullparameter in Setter-Methoden.
Das obige ist der detaillierte Inhalt vonIllegalArgumentException oder NullPointerException: Welche Ausnahme soll für Null-Setter-Parameter ausgelöst werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!