UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis 2015.2 Interfaces São classes nas quais TODOS os métodos são abstratos. Possui comportamento semelhante às classes abstratas, ou seja, não é possível instanciar uma interface. Métodos não podem ser declarados como protected ou private, apenas como public. Interfaces podem herdar de outras interfaces, mas não de classes. Interfaces • Exemplo de Classe que implementa uma interface: Interfaces • Classes podem herdar de outra classe e implementar uma interface: Tratamento de Exceções Em Java, um erro em tempo de execução é denominado exceção. Esta exceção pode ser capturada, evitando que o usuário receba o erro na tela, substituindo por uma mensagem mais “amigável”. Permite continuação do fluxo normal da aplicação. Tratamento de Exceções Para tratar exceções, é necessário utilizar o bloco Try – Catch. Todas as exceções herdam da classe Exception. Exceções podem ser personalizadas, bastando estender a classe Exception. Tratamento de Exceções Exemplo: Exceções podem ser aninhadas, ou seja, possuir, em um mesmo bloco, diversos Catches para diferentes Exceptions. Tratamento de Exceções Aninhamento de exceções: Tratamento de Exceções Capturando exceção personalizada: Tratamento de Exceções Classe JogoException: Exercícios Criar interface Felino com métodos atacaCaca, qtdFilhotesCria, turnoCaca. Criar classe abstrata Pantera que implementa interface Felino e contém os métodos tipoPantera (não abstrato) e velocidadeMaxima (abstrato). Criar classe Tigre que é filha de Pantera. No método tipoPantera colocar Tigre. Criar classe Principal com método main, que invoque os métodos tipoPantera e velocidadeMaxima. Exercícios Criar interface Niquel com métodos setPeso, getPeso,setUnidade, getUnidade. Criar interface Moeda que vai herdar de Niquel e conterá os métodos qtdProduzidaValor, simboloMoeda. Criar classe Real que irá implementar interface Moeda. Exercícios Pedir para o usuário informar o nome da árvore que deseja criar. Caso o nome seja Jambo, Jaca ou Amêndoa, criar o respectivo objeto. Caso contrário, lançar uma exceção ArvoreException informando que esta árvore não existe. Dúvidas?