|
| 1 | +<h1> |
| 2 | +TRATAMENTO DE EXCEÇÕES EM JAVA</h1> |
| 3 | + |
| 4 | +<p>Curso que apresenta conceitos introdutórios sobre como podemos identificar e tratar Exceptions na linguagem Java. |
| 5 | +Curso este ministrado por mim em nome da <strong> <a href="https://web.digitalinnovation.one/home"> DIGITAL INNOVATION ONE </a></strong> 🧡💛 e disponibilizado de forma gratuita para a comunidade dos desenvolvedores Java. |
| 6 | + |
| 7 | +<h2> |
| 8 | +🛑 Pré-requistos |
| 9 | +</h2> |
| 10 | + |
| 11 | +- [x] Java JDK 8 ou superior |
| 12 | +- [x] IDE para desenvolvimento Java |
| 13 | +- [x] Conhecimento BÁSICO em OOP |
| 14 | +- [x] Estar disposto a aprender |
| 15 | + |
| 16 | +<h2> 📚 Ementa</h2> |
| 17 | +<ol> |
| 18 | + <li>Visão Geral</li> |
| 19 | + <li>Unchecked Exception</li> |
| 20 | + <li>Checked Exception</li> |
| 21 | + <li>Exception Personalizada</li> |
| 22 | +</ol> |
| 23 | + |
1 | 24 | <h2>Visão Geral</h2>
|
2 | 25 | <ul>
|
3 | 26 | <li> Exceção é um evento que interrompe o fluxo normal de processamento de uma classe.
|
|
10 | 33 | </li>
|
11 | 34 | </ul>
|
12 | 35 |
|
| 36 | +<h3>Error:</h3> Usado pela JVM que serve para indicar se existe algum problema de recurso do programa, tornando a execução impossível de continuar. |
| 37 | +<h3>Unchecked (Runtime):</h3> Exceptions que PODEM ser evitados se forem tratados e analisados pelo desenvolvedor. |
| 38 | +<h3>Checked Exception:</h3> Exceptions que DEVEM ser evitados etratados pelo desenvolvedor para o programa funcionar. |
| 39 | + |
13 | 40 | <div align="center">
|
14 | 41 | <img src="https://i.ibb.co/VjT23Rr/amoTu.png" alt="amoTu" border="0" width="400" height="600">
|
15 | 42 | <p>Hierarquia Exceptions</p>
|
16 | 43 | </div>
|
17 | 44 |
|
18 |
| -<h2>Erro</h2> |
| 45 | +<h2 aling="center">Palavras Reservadas:</h2> |
| 46 | +<ul> |
| 47 | + <li>try, catch, finally: Cada uma dessas palavras, juntas, definem blocos para o tratamento de exceções.</li> |
| 48 | + <li>throws: Declara que um método pode lançar uma ou várias exceções.</li> |
| 49 | + <li>throw: Lança explicitamente uma exception.</li> |
| 50 | +</ul> |
| 51 | + |
| 52 | +<hr> |
| 53 | +<h2>🔸 Erro</h2> |
19 | 54 | <ul>
|
20 | 55 | <li>Usado pela JVM, serve para indicar quando existe algum problema de recurso do programa, tornando a execução impossível de continuar.</li>
|
21 | 56 | <li>O “Erro” é algo que não pode mais ser tratado, ao contrário da “Exceção” que trata seus erros, pois todas as subclasses de Exception (menos as subclasses RuntimeException) são exceções que obrigatóriamente devem ser tratadas.</li>
|
22 | 57 | </ul>
|
23 | 58 |
|
24 |
| -<h2>Uchecked Exception</h2> |
| 59 | +<h2>🔸 Uchecked Exception</h2> |
25 | 60 | <ul>
|
26 | 61 | <li>Herdam da classe <em>RuntimeException</em> ou da classe <em>Error</em>.</li>
|
27 | 62 | <li>O compilador não verifica o código para ver se a exceção foi capturada ou declarada.</li>
|
28 | 63 | <li>Se uma exceção não-verificada ocorrer e não tiver sido capturada, o programa terminará ou executará com resultados inesperados.</li>
|
29 | 64 | <li>Em geral, podem ser evitadas com uma codificação adequada.</li>
|
30 | 65 | </ul>
|
31 | 66 |
|
32 |
| -<h2>Checked Exception</h2> |
| 67 | +<h2>🔸 Checked Exception</h2> |
33 | 68 | <ul>
|
34 | 69 | <li>As exceções que são herdadas da classe <em>Exception</em>, mas não de <em>RuntimeException</em>.</li>
|
35 | 70 | <li>O compilador impõe um requisito do tipo "capturar ou declarar".</li>
|
|
39 | 74 | </li>
|
40 | 75 | </ul>
|
41 | 76 |
|
42 |
| -<h2>Exception Personalizada</h2> |
| 77 | +<h2>🔸 Exception Personalizada</h2> |
43 | 78 | <ul>
|
44 | 79 | <li>Programadores podem achar útil declarar suas próprias classes de exceção.</li>
|
45 | 80 | <li>Essas Exceptions são específicas aos problemas que podem ocorrer quando outro programador empregar suas classes reutilizáveis.
|
|
48 | 83 | <li><em>Importante</em>: Antes de criar a nossa própria exceção, é recomendado verificar se já existe alguma exceção na biblioteca Java que já nos forneça o que precisamos. Afinal, não queremos reinventar a roda!</li>
|
49 | 84 | </ul>
|
50 | 85 |
|
51 |
| -<h2>Blocos try/catch/finally</h2> |
| 86 | +<h2>🔸 Blocos try/catch/finally</h2> |
52 | 87 | <ul>
|
53 | 88 | Bloco <strong><em>try</em></strong>:
|
54 | 89 | <li>Região onde se encontra o código que queremos verificar se irá ou não lançar uma exceção.</li>
|
|
70 | 105 | </li>Geralmente utilizado quando precisamos executar algum código independente se ocorrer exception ou não.</li>
|
71 | 106 | </ul>
|
72 | 107 |
|
73 |
| -<h2>Cláusulas throw e throws</h2> |
| 108 | +<h2>🔸 Cláusulas throw e throws</h2> |
74 | 109 | <ul>
|
75 | 110 | Cláusula <strong><em>trows</em></strong>
|
76 | 111 | <li>Usada na assinatura do método.</li>
|
|
88 | 123 |
|
89 | 124 | </ul>
|
90 | 125 |
|
91 |
| -<h2>Referências</h2> |
| 126 | +<h2>🔗 Referências</h2> |
92 | 127 | <ul>
|
93 | 128 | <li>https://www.devmedia.com.br/trabalhando-com-excecoes-em-java/27601</li>
|
| 129 | + <li>https://www.youtube.com/watch?v=ld2C4GcAtsg&t=296s</li> |
| 130 | + <li>https://www.programcreek.com/2009/02/diagram-for-hierarchy-of-exception-classes/</li> |
| 131 | + |
| 132 | +</ul> |
| 133 | + |
| 134 | +<h2> 🤝 Contribuindo </h2> |
| 135 | + |
| 136 | +Este repositório foi criado para fins de estudo, então contribua com ele.<br> |
| 137 | +Se te ajudei de alguma forma, ficarei feliz em saber. E caso você conheça alguém que se identidique com o conteúdo, não deixe de compatilhar. |
| 138 | + |
| 139 | +Se possível: |
| 140 | + |
| 141 | +⭐️ Star o projeto |
| 142 | + |
| 143 | +🐛 Encontrar e relatar issues |
| 144 | + |
| 145 | + |
| 146 | +------------ |
94 | 147 |
|
95 |
| -</ul> |
| 148 | +Disponibilizado com ♥ por [cami-la](https://www.linkedin.com/in/cami-la/ "cami-la"). |
0 commit comments