Prévia do material em texto
<p>UNIVERSIDADE VEIGA DE ALMEIDA/CAMPUS CABO FRIO</p><p>ANÁLISE E DESENVOLVIMENTO DE SISTEMAS</p><p>JOÃO MELLO COUTINHO</p><p>PROGRAMAÇÃO ORIENTADA A OBJETO</p><p>AVA 1 – Classes, objetos e métodos de acesso</p><p>RIO DE JANEIRO</p><p>2024</p><p>Classes, objetos e métodos de acesso</p><p>Implementar uma classe modelo em Java e desenvolver uma aplicação de teste para criação e</p><p>uso de diferentes objetos desse modelo.</p><p>Crie uma classe com cinco atributos para a criação de objetos do tipo Computador. A classe deve</p><p>possuir dois métodos construtores, um sem parâmetros (construtor default) e outro com os cinco</p><p>parâmetros relacionados aos atributos da classe Computador. Além disso, a classe deve conter</p><p>os métodos de acesso (setters e getters) para cada atributo e um método de exibição de todos os</p><p>atributos denominado imprimir.</p><p>Crie uma outra aplicação (Classe) que instancie quatro objetos do tipo Computador, preencha os</p><p>atributos com dados solicitados ao usuário e ao final exiba todos os atributos dos quatro objetos</p><p>criados invocando o método imprimir. Para criar os quatro objetos, com a metade utilize o</p><p>construtor default, e com a outra metade utilize o construtor que recebe todos os atributos.</p><p>Desenvolva a classe e a aplicação separadamente. O projeto deve, então, ser documentado em</p><p>um arquivo do Word e postado no ambiente de avaliação. Enviar também os arquivos fonte (.java)</p><p>das duas aplicações.</p><p>Como é um documento institucional, o arquivo deve ter:</p><p>• Capa (detalhando a instituição e o curso).</p><p>• Contracapa (detalhando a disciplina, professor e membros do grupo).</p><p>• Índice.</p><p>• Introdução.</p><p>• Conteúdo: código da classe principal, código da classe de aplicação de teste e os</p><p>resultados obtidos após a execução da aplicação no ambiente de desenvolvimento.</p><p>• Conclusão do trabalho.</p><p>• Bibliografia.</p><p>Orientações Gerais para a realização do Trabalho da Disciplina:</p><p>• A pontuação máxima desta atividade avaliativa é de 100 pontos (100%);</p><p>• Seu desempenho nesta avaliação compõe a nota final das Avaliações Online (A1);</p><p>• O Trabalho da Disciplina (TD) deve ser realizado INDIVIDUALMENTE;</p><p>• Trabalhos que apresentarem transcrições de textos sem a devida referência - segundo as</p><p>normas da ABNT 6023 - terão nota zero atribuída - “Cartilha Plágio (Links para um site</p><p>externo.)”;</p><p>• O Trabalho que não for postado/enviado até o prazo terá nota zero, assim como aqueles</p><p>que forem apenas salvos e não enviados para correção na data estipulada no calendário</p><p>da disciplina;</p><p>• O Trabalho deverá ser postado somente no local específico para essa ação no Ambiente</p><p>Virtual de Aprendizagem.</p><p>https://ead.uva.br/filemanager/file/11/Cartilha_plagio.pdf</p><p>https://ead.uva.br/filemanager/file/11/Cartilha_plagio.pdf</p><p>Implementação da classe Computador e a aplicação de teste em Java. Depois, podemos</p><p>falar sobre a estrutura do documento institucional.</p><p>Classe COMPUTADOR :</p><p>public class Computador {</p><p>// Atributos</p><p>private String marca;</p><p>private String modelo;</p><p>private int memoriaRAM;</p><p>private int armazenamento;</p><p>private double preco;</p><p>// Construtor default</p><p>public Computador() {</p><p>this.marca = "";</p><p>this.modelo = "";</p><p>this.memoriaRAM = 0;</p><p>this.armazenamento = 0;</p><p>this.preco = 0.0;</p><p>}</p><p>// Construtor com parâmetros</p><p>public Computador(String marca, String modelo, int memoriaRAM, int armazenamento,</p><p>double preco) {</p><p>this.marca = marca;</p><p>this.modelo = modelo;</p><p>this.memoriaRAM = memoriaRAM;</p><p>this.armazenamento = armazenamento;</p><p>this.preco = preco;</p><p>}</p><p>// Métodos getters e setters</p><p>public String getMarca() {</p><p>return marca;</p><p>}</p><p>public void setMarca(String marca) {</p><p>this.marca = marca;</p><p>}</p><p>public String getModelo() {</p><p>return modelo;</p><p>}</p><p>public void setModelo(String modelo) {</p><p>this.modelo = modelo;</p><p>}</p><p>public int getMemoriaRAM() {</p><p>return memoriaRAM;</p><p>}</p><p>public void setMemoriaRAM(int memoriaRAM) {</p><p>this.memoriaRAM = memoriaRAM;</p><p>}</p><p>public int getArmazenamento() {</p><p>return armazenamento;</p><p>}</p><p>public void setArmazenamento(int armazenamento) {</p><p>this.armazenamento = armazenamento;</p><p>}</p><p>public double getPreco() {</p><p>return preco;</p><p>}</p><p>public void setPreco(double preco) {</p><p>this.preco = preco;</p><p>}</p><p>// Método para imprimir todos os atributos</p><p>public void imprimir() {</p><p>System.out.println("Marca: " + marca);</p><p>System.out.println("Modelo: " + modelo);</p><p>System.out.println("Memória RAM: " + memoriaRAM + " GB");</p><p>System.out.println("Armazenamento: " + armazenamento + " GB");</p><p>System.out.println("Preço: R$ " + preco);</p><p>}</p><p>}</p><p>Aplicação de TESTE :</p><p>import java.util.Scanner;</p><p>public class TesteComputador {</p><p>public static void main(String[] args) {</p><p>Scanner scanner = new Scanner(System.in);</p><p>// Criação de dois objetos usando o construtor default</p><p>Computador comp1 = new Computador();</p><p>Computador comp2 = new Computador();</p><p>// Preenchendo os atributos dos objetos criados com o construtor default</p><p>System.out.println("Preencha os dados do Computador 1:");</p><p>System.out.print("Marca: ");</p><p>comp1.setMarca(scanner.nextLine());</p><p>System.out.print("Modelo: ");</p><p>comp1.setModelo(scanner.nextLine());</p><p>System.out.print("Memória RAM (GB): ");</p><p>comp1.setMemoriaRAM(scanner.nextInt());</p><p>System.out.print("Armazenamento (GB): ");</p><p>comp1.setArmazenamento(scanner.nextInt());</p><p>System.out.print("Preço: R$ ");</p><p>comp1.setPreco(scanner.nextDouble());</p><p>scanner.nextLine(); // Consumir a nova linha</p><p>System.out.println("Preencha os dados do Computador 2:");</p><p>System.out.print("Marca: ");</p><p>comp2.setMarca(scanner.nextLine());</p><p>System.out.print("Modelo: ");</p><p>comp2.setModelo(scanner.nextLine());</p><p>System.out.print("Memória RAM (GB): ");</p><p>comp2.setMemoriaRAM(scanner.nextInt());</p><p>System.out.print("Armazenamento (GB): ");</p><p>comp2.setArmazenamento(scanner.nextInt());</p><p>System.out.print("Preço: R$ ");</p><p>comp2.setPreco(scanner.nextDouble());</p><p>scanner.nextLine(); // Consumir a nova linha</p><p>// Criação de dois objetos usando o construtor com parâmetros</p><p>System.out.println("Preencha os dados do Computador 3:");</p><p>System.out.print("Marca: ");</p><p>String marca3 = scanner.nextLine();</p><p>System.out.print("Modelo: ");</p><p>String modelo3 = scanner.nextLine();</p><p>System.out.print("Memória RAM (GB): ");</p><p>int memoriaRAM3 = scanner.nextInt();</p><p>System.out.print("Armazenamento (GB): ");</p><p>int armazenamento3 = scanner.nextInt();</p><p>System.out.print("Preço: R$ ");</p><p>double preco3 = scanner.nextDouble();</p><p>scanner.nextLine(); // Consumir a nova linha</p><p>Computador comp3 = new Computador(marca3, modelo3, memoriaRAM3,</p><p>armazenamento3, preco3);</p><p>System.out.println("Preencha os dados do Computador 4:");</p><p>System.out.print("Marca: ");</p><p>String marca4 = scanner.nextLine();</p><p>System.out.print("Modelo: ");</p><p>String modelo4 = scanner.nextLine();</p><p>System.out.print("Memória RAM (GB): ");</p><p>int memoriaRAM4 = scanner.nextInt();</p><p>System.out.print("Armazenamento (GB): ");</p><p>int armazenamento4 = scanner.nextInt();</p><p>System.out.print("Preço: R$ ");</p><p>double preco4 = scanner.nextDouble();</p><p>Computador comp4 = new Computador(marca4, modelo4, memoriaRAM4,</p><p>armazenamento4, preco4);</p><p>// Exibindo os atributos dos quatro objetos criados</p><p>System.out.println("\nDados dos Computadores:");</p><p>comp1.imprimir();</p><p>System.out.println();</p><p>comp2.imprimir();</p><p>System.out.println();</p><p>comp3.imprimir();</p><p>System.out.println();</p><p>comp4.imprimir();</p><p>}</p><p>}</p>