Web TippsUse custom web fonts in Google Sheets charts(08.09.2026 um 17:05 Uhr)
Web TippsIntroducing the new 1Password App for Google Chat(08.09.2026 um 18:02 Uhr)
Web TippsUse custom web fonts in Google Sheets charts(08.09.2026 um 17:05 Uhr)
Web TippsIntroducing the new 1Password App for Google Chat(08.09.2026 um 18:02 Uhr)

🔧 Programmierung 🕛 vor 1 Jahr 3 Min Lesezeit
0

Item 72: Priorize o uso das exceções padrões

↗ Quelle (dev.to)
🗣️ Stimme:

1. Importância da reutilização de exceções padrão




  • Exceções padrão tornam o código mais fácil de entender e familiar para outros programadores.

  • Melhoram a leitura e o aprendizado da API.

  • Reduzem o consumo de memória e o tempo de carregamento de classes.



2. Exceções padrão mais reutilizadas e seus usos típicos




  • IllegalArgumentException:

  • Usada quando um parâmetro possui um valor inadequado.



Exemplo:




CODE
public void setRepeatCount(int count) {
if (count < 0) {
throw new IllegalArgumentException("Count cannot be negative");
}
this.count = count;
}







IllegalStateException:




  • Lançada quando o estado do objeto não permite a operação.



Exemplo:




CODE
public void start() {
if (started) {
throw new IllegalStateException("Already started");
}
started = true;
}







NullPointerException:




  • Usada quando um parâmetro nulo é proibido.



Exemplo:




CODE
public void setName(String name) {
if (name == null) {
throw new NullPointerException("Name cannot be null");
}
this.name = name;
}







IndexOutOfBoundsException:

Usada para índices fora do intervalo permitido.



Exemplo:




CODE
public int getElement(int index) {
if (index < 0 || index >= size) {
throw new IndexOutOfBoundsException("Index out of range");
}
return elements[index];
}







ConcurrentModificationException:




  • Lançada ao detectar uma modificação concorrente em objetos projetados para uso por uma única thread.



Exemplo:




CODE
for (String item : list) {
list.remove(item); // Pode lançar ConcurrentModificationException
}







UnsupportedOperationException:




  • Lançada quando uma operação não é suportada pelo objeto.



Exemplo:




CODE
List<String> immutableList = Collections.unmodifiableList(new ArrayList<>());
immutableList.add("item"); // Lança UnsupportedOperationException







3. Boas práticas ao usar exceções padrão




  • Não reutilize superclasses gerais como Exception, RuntimeException, Throwable ou Error diretamente.

  • Escolha a exceção com base em suas semânticas documentadas.

  • Use subclasses personalizadas de exceções padrão apenas quando necessário.



4. Decisão entre exceções




  • Em situações ambíguas, siga estas diretrizes:

  • Use IllegalStateException se a operação falhou devido ao estado do objeto.

  • Use IllegalArgumentException se a falha foi causada por um argumento inválido.



Exemplo:




  • Um método para distribuir cartas pode lançar IllegalArgumentException se o tamanho da mão for inválido ou IllegalStateException se o baralho não tiver cartas suficientes.



5. Outras exceções reutilizáveis




  • ArithmeticException e NumberFormatException podem ser usadas em contextos de operações matemáticas e conversões de números.



Exemplo:




CODE
public int divide(int numerator, int denominator) {
if (denominator == 0) {
throw new ArithmeticException("Division by zero");
}
return numerator / denominator;
}







Image description



Conclusão

Priorize o uso de exceções padrão sempre que possível. Elas tornam o código mais claro, eficiente e consistente com as práticas da linguagem Java.

Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
3 Quellen
Use custom web fonts in Google Sheets charts
2 Quellen
Introducing the new 1Password App for Google Chat
1 Quelle
Context-aware access controls are available for Gemini Enterprise in the Admin console
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Item 72: Priorize o uso das exceções padrões

Thematisch verwandte Begriffe: Item, Priorize, exceções, padrões · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...