LISTA DE EXERCÍCIOS 1 – POO 2 Irati – PR, 22 de fevereiro de 2017 Prof. Valter Estevam 1 [*] Qual é a diferença entre JDK e JRE? Qual deles precisamos instalar para poder compilar e executar programas Java? 2 [*] Assinale V para verdadeiro e F para falso. ( ) Em Java, um nome para um identificador não pode iniciar por um digito (valores de 0 a 9). ( ) Uma palavra reservada do Java pode ser utilizada como um identificador. ( ) Segundo nossas code conventions nomes de classes são iniciados sempre por letras maiúsculas. ( ) As constantes devem ser nomeadas usando caixa alta. Ex: PI. ( ) String é um tipo primitivo (ou básico) da linguagem Java. ( ) A principal vantagem no uso de linguagens orientadas a objetos frente às linguagens procedimentais é o reuso de software. ( ) Abstração, Encapsulamento de dados, Herança e Polimorfismo são algumas propriedades básicas da linguagem Java. ( ) Uma classe possui estado, comportamento e identidade. ( ) Um atributo sem indicação de modificador de acesso (public, private ou protected) pode ser acessado somente dentro da classe onde está presente. ( ) Em Java podemos ter dois ou mais métodos em uma classe com o mesmo nome mas com assinaturas diferentes. 3 [*] Explique o conceito de abstração e forneça um exemplo onde ele é aplicado. 4 [*] Conceitue objeto e classes de objetos. Quais são as diferenças? 5 [*] Explique o que são atributos e depois o que são métodos. 6 [*]. No exemplo a Agenda pudemos observar duas formas diferentes de resolver um mesmo problema. Uma utilizou o paradigma de programação estruturada e a linguagem C e a outra utilizou o paradigma de programação orientada a objetos com a linguagem Java. Apresente as principais características de cada paradigma e explique como ele foi aplicado a ambos os exemplos. 7 [*]. Considere que você tem que definir duas classes Carro, uma para o domínio de um site de venda de veículos e outra para o domínio de um jogo no estilo NeedForSpeed, as classes seriam iguais? Apresente a modelagem e a implementação de cada classe utilizando a linguagem Java. 8 [*]. Considerando o exemplo da Agenda utilizando OO. Apresente o modelo de classes para esta aplicação. Identifique especialmente o nome das classes, os atributos e os comportamentos (métodos). Utilize a notação UML. 9 [*] Uma classe em Java representa um quadrilátero. As dimensões deste quadrilátero são definidas com base no Sistema Internacional de Medidas (SI) e a classe possui métodos para calcular seu perímetro, sua área e o comprimento de sua diagonal. Proponha e implemente uma solução para que o usuário possa obter os valores do perímetro, da área e da diagonal em polegadas (sabe-se que 1 pol = 2,54 cm). 10 [*] Modele uma classe data utilizando a notação UML. Identifique os atributos e os métodos necessários para que ela possa ser utilizada em outras aplicações posteriormente. Implemente sua classe data utilizando a linguagem Java. 11 [**] Modelo e implemente uma classe utilizando a linguagem Java para arquivos de músicas. Esta classe deve ser pensada para o contexto de um software player de músicas. 12 [**] Apresente uma modelagem, o mais completa possível, para um software mensageiro no estilo Whatsapp. Você deve implementar as classes.