Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouDiego Augusto Alterado mais de 10 anos atrás
1
Utilitários Marco Antonio
2
Enum Como o nome sugere, é uma enumeração de opções para uma determinada situação A principal vantagem é limitar as opções para o programador em atributos que fazem parte de um domínio. –Ex. sexo só pode ser masculino ou feminino –Dias úteis são seg, ter, qua, qui, sex
3
Tipo de Pessoa package com.javabasico.enumeracoes; public enum TipoDePessoa { FISICA, JURIDICA; }
4
Pessoa public class Pessoa { private String nome; private String endereco; private String telefone; private TipoDePessoa tipoDePessoa; }
5
Teste package net.javabasico.enumeracoes; public class TesteDaPessoa { public TesteDaPessoa() { Pessoa p = new Pessoa();\ p.setNome("Marco"); p.setEndereco("Meu Endereço"); p.setTelefone("Meu Telefone"); p.setTipoDePessoa(TipoDePessoa.FISICA); System.out.println("Tipo: " + p.getTipoDePessoa()); } public static void main(String[] args) { new TesteDaPessoa(); }
6
Nova versão do tipo Podemos informar valores personalizados para as opções de um enum.
7
Tipo package net.javabasico.enumeracoes; public enum TipoDePessoa { FISICA("Pessoa Física"), JURIDICA("Pessoa Jurídica"); private final String tipo; private TipoDePessoa(String tipo) { this.tipo = tipo; } public String getTipo() { return tipo; }
8
Novo teste Agora podemos recuperar o valor personalizado do nosso enum.
9
Novo teste package net.javabasico.enumeracoes; public class TesteDaPessoa { public TesteDaPessoa() { Pessoa p = new Pessoa(); p.setNome("Marco"); p.setEndereco("Meu Endereço"); p.setTelefone("Meu Telefone"); p.setTipoDePessoa(TipoDePessoa.FISICA); System.out.println("Tipo: " + p.getTipoDePessoa().getTipo()); } public static void main(String[] args) { new TesteDaPessoa(); }
10
Enum Sexo Crie o enum Sexo e adicione esse atributo na classe pessoa.
11
Enum DiaDaSemana Vamos criar o enum DiaDaSemana.
12
DiaDaSemana package com.javabasico.enumeracoes; public enum DiaDaSemana { SEGUNDA("Segunda"), TERCA("Terça"), QUARTA("Quarta"), QUINTA("Quinta"), SEXTA( "Sexta"), SABADO("Sábado"), DOMINGO("Domingo"); private final String dia; private DiaDaSemana(String dia) { this.dia = dia; } public String getDia() { return dia; }
13
Iterando entre os dias da semana Podemos recuperar os valores do enum, por exemplo, para montar uma combobox.
14
TesteDiasDaSemana package com.javabasico.enumeracoes; public class TesteDiasDaSemana { public static void main(String[] args) { for (DiaDaSemana d : DiaDaSemana.values()) { System.out.println("Valor -> " + d.getDia()); System.out.println("Nome -> " + d.name()); System.out.println("Índice -> " + d.ordinal()); System.out.println("----------------"); }
15
Calendário Crie a classe Calendario com os atributos DiaDaSemana (que já existe), mês e dia do mês (esses dois últimos ainda devem ser criados). –Considere o mês comercial de 30 dias. Esse calendário deve ter um método imprimeData, com a data atual recuperada através dos enums.
16
Assertion Mecanismo para tratar exceções em situações específicas. Um asserção é formada por uma condição booleana que quando verdadeira indica um bug. As asserções não são identificadas pelo compilador, deve ser acionado explicitamente.
17
Fluxo ContaCorrente conta = null; //... // recupera a conta do banco //... // verifique se o objeto está carregado corretamente assert conta != null;
18
Detalhamento Na última linha, a conta não pode ser null. Caso seja, indica um bug da aplicação. Lembre-se: a aplicação funcionará corretamente, pois por padrão o compilador não vê as asserções.
19
Teste public class TesteDaAssercao { public TesteDaAssercao() { assert testeFalso(); System.out.println("1"); assert testeVerdadeiro(); System.out.println("2"); } private boolean testeVerdadeiro() { return true; } private boolean testeFalso() { return false; } public static void main(String[] args) { new TesteDaAssercao(); }
20
Compilação
21
Execução normal
22
Execução com assertion enabled Somente agora, depois de usar o parâmetro –ea você pode verificar o erro da asserção
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.