Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Criado conteúdo de exceção customizada #59

Merged
merged 1 commit into from
Oct 17, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions Exception Handling/Custom Exception/com.custom.java/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Exceções customizadas

## Introdução

Ao utilizarmos a linguagem Java, podemos criar exceções personalizadas que são criadas a partir da classe Exception. Dessa forma, quando um comportamento determinado ocorrer, podemos lançar uma exceção que possua um nome que facilite o entendimento da causa e, consequentemente, a identificação e correção. Isso ajuda muito pois permite criar exceções que são próprias do projeto, e com regras de negócio inerentes a ele.

## Funcionamento do Programa

1. Ao executar a classe Main
2. Será feito a verificação se a idade da pessoa esta entre 0 e 150 anos.
3. Em caso de não estar em acordo, a exceção IdadeInvalidaException será lançada.
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package domain;

import exceptions.IdadeInvalidaException;

public class Pessoa {

private static final short ZERO = 0;
private static final short CENTO_CINQUENTA = 150;
private static final String IDADE_NAO_PERMITIDA = "Idade Não Permitida";

private String nome;
private short idade;

public String getNome() {
return nome;
}

public void setNome(String nome) {
this.nome = nome;
}

public short getIdade() {
return idade;
}

public void setIdade(short idade){
this.idade = idade;
}

public void verificaIdade() throws IdadeInvalidaException{
if(this.idade < ZERO || this.idade > CENTO_CINQUENTA){
throw new IdadeInvalidaException(IDADE_NAO_PERMITIDA);
}
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package exceptions;
public class IdadeInvalidaException extends Exception {

public IdadeInvalidaException(String erro){
super(erro);
}

}


30 changes: 30 additions & 0 deletions Exception Handling/Custom Exception/com.custom.java/impl/Main.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package impl;

import java.util.Scanner;
import domain.Pessoa;
import exceptions.IdadeInvalidaException;

public class Main {

public static void main(String[] args) {

System.out.println("Iniciando criação de uma pessoa... 💁");
System.out.println("Digite o nome:");
Pessoa pessoa = new Pessoa();
Scanner scanner = new Scanner(System.in);
String nome = scanner.nextLine();
System.out.println("Digite a idade:");
Short idade = scanner.nextShort();
scanner.close();

try {
pessoa.setNome(nome);
pessoa.setIdade(idade);
pessoa.verificaIdade();
System.out.println("A pessoa com nome: " + nome + " e idade: " + idade + " foi criada com sucesso!");
} catch (IdadeInvalidaException e) {
e.printStackTrace();
}
}

}