Exercício 1: Tratamento de ArithmeticException
// Exercicio1TryCatch.java
import java.util.InputMismatchException;
import java.util.Scanner;
public class Exercicio1TryCatch {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
try {
System.out.print("Digite o primeiro número: ");
double numero1 = scanner.nextDouble();
System.out.print("Digite o segundo número (divisor): ");
double numero2 = scanner.nextDouble();
double resultado = numero1 / numero2;
System.out.println("Resultado da divisão: " + resultado);
} catch (ArithmeticException e) {
// Captura a exceção de divisão por zero
System.err.println("Erro: Não é possível dividir por zero. " + e.getMessage());
} catch (InputMismatchException e) {
// Captura a exceção caso o usuário digite algo que não seja um número
System.err.println("Erro: Entrada inválida. Por favor, digite apenas números. " + e.getMessage());
} finally {
// Opcional: bloco finally é executado sempre, independentemente de exceção
scanner.close(); // Garante que o Scanner seja fechado
}
}
}
Exercício 2: Exceção Personalizada SenhaInvalidaException
- Crie a classe de exceção personalizada SenhaInvalidaException:
Java
// SenhaInvalidaException.java
public class SenhaInvalidaException extends Exception {
public SenhaInvalidaException(String message) {
super(message);
}
}
- Crie o programa principal para verificar a senha:
Java
// Exercicio2Senha.java
import java.util.Scanner;
public class Exercicio2Senha {
public static void verificarSenha(String senha) throws SenhaInvalidaException {
if (senha == null || senha.length() < 8) {
throw new SenhaInvalidaException("A senha deve ter pelo menos 8 caracteres.");
}
System.out.println("Senha válida!");
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Digite uma senha (mínimo 8 caracteres): ");
String senhaDigitada = scanner.nextLine();
try {
verificarSenha(senhaDigitada);
} catch (SenhaInvalidaException e) {
System.err.println("Erro de senha: " + e.getMessage());
} finally {
scanner.close();
}
}
}
Exercício 3: Consulta a API GitHub com Exceção Personalizada
- Crie a classe de exceção personalizada ErroConsultaGitHubException:
Java
/```
/ ErroConsultaGitHubException.java
public class ErroConsultaGitHubException extends RuntimeException {
public ErroConsultaGitHubException(String message) {
super(message);
}
public ErroConsultaGitHubException(String message, Throwable cause) {
super(message, cause);
}
}