Lista Avaliativa Faculdades Integradas de Caratinga Prática de POO Jacson RC Silva Para cada questão que requeira implementação, crie um arquivo “.zip” com seus fontes. O nome desses arquivos deve seguir este exemplo: Questão 1 -> ex-01.zip Envie as respostas ao e-mail: [email protected], com o Assunto: PPOO2010-ListExer Enviar até no dia 11 de agosto de 2010. Questões 1. Qual a nomenclatura utilizada em Java para classes, métodos e variáveis? Implemente uma classe simples "Carro", demonstrando através dos comentários a nomenclatura utilizada. 2. O que é um pacote em Java? Demonstre através de um exemplo de código. 3. Qual a diferença do arquivo ".java" para o arquivo ".class"? 4. Para que serve um construtor e como ele pode ser utilizado? Implemente dois exemplos: um para ser possível fazer 'Classe("POO")' e outro para ser possível fazer 'Classe("POO", 30)'. 5. Procure no Google e descreva com suas palavras o Padrão de Projeto Iterator, depois implemente-o em uma classe qualquer como exemplo. 6. Por que o método main tem que ser estático? 7. Como fazer um método interno da classe poder ser acessado por um externo sem a necessidade de instanciar um objeto? Implemente um exemplo. 8. Em outras linguagens, como em C, além do construtor, temos um destrutor. O que é e para que serve um destrutor? Java possui destrutores? Por quê? 9. Quais as vantagens de POO quanto a programação estruturada? A forma de execução de um POO é diferente quanto a programação estruturada? 10. Qual a diferença das linhas de código abaixo? private Classe varClasse; private Classe varClasse = new Classe(); E qual sua diferença na memória do computador? 11. Crie: - uma classe cesta: Essa classe deve conter ser capaz de armazenar os pães feitos pelo padeiro. Ela também deverá informar quando está vazia e quando está cheia, sendo este valor definido ao instanciar a classe (caso não seja especificada a quantidade, o máximo deverá ser 80). Deverá ainda ser capaz de informar qual o máximo de pães que pode armazenar e qual a quantidade de pães que possui; - uma classe padeiro: Essa classe deve descrever o padeiro, armazenando seu nome e idade, além de ser capaz de fazer novos pães e de informar o estado do padeiro (ocupado ou atoa). Para garantir que o padeiro sempre fará uma quantidade de pães que cabe na cesta, primeiro ele verificará quantos pães faltam para completá-la, para depois fazer os pães. - uma classe atendente: Essa classe deve descrever a atandente, armazenando seu nome, sua idade e seu telefone. Deve também ser capaz de atender os usuários, vender os pães e informar ao padeiro que tem poucos pães na cesta (quando a quantidade for menor ou igual a 40% do máximo de pães) - uma classe principal: Deve manipular as classes necessárias para que um usuário consiga simular a compra de pães. Também deve informar, a cada iteração com o usuário, a quantidade de pães na cesta e o estado do padeiro.