2
respostas

[Projeto] Resolução do desafio

Abaixo minha resolução, novamente colocando as classes do exercícios e a execução sendo instanciada na MainExercícios

1 - ContaBanco

package Exercicios.Aula2;

public class ContaBanco {

    private int numeroConta;
    private double saldo;
    public String titular;

    public int getNumeroConta() {
        return numeroConta;
    }

    public void setNumeroConta(int numeroConta) {
        this.numeroConta = numeroConta;
    }

    public double getSaldo() {
        return saldo;
    }
}

2 - IdadePessoa

package Exercicios.Aula2;

public class IdadePessoa {

    private String nome;
    private int idade;

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public int getIdade() {
        return idade;
    }

    public void setIdade(int idade) {
        this.idade = idade;
    }

    public void verificarIdade() {

        if (idade >= 18) {
            System.out.println(nome + " é maior de idade.");
        } else {
            System.out.println(nome + " é menor de idade.");
        }
    }
}

3 - Produto

package Exercicios.Aula2;

public class Produto {

    private String nome;
    private double preco;

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public double getPreco() {
        return preco;
    }

    public void setPreco(double preco) {
        this.preco = preco;
    }

    public void aplicarDesconto(double percentual) {
        this.preco -= this.preco * percentual / 100;
    }
}

4 - Aluno

package Exercicios.Aula2;

public class Aluno {

    private String nome;
    private double[] notas;

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public double[] getNotas() {
        return notas;
    }

    public void setNotas(double[] notas) {
        this.notas = notas;
    }

    public double calcularMedia() {

        double soma = 0;
        for (double nota : notas) {
            soma += nota;
        }
        return soma / notas.length;
    }
}

5 - Livro

package Exercicios.Aula2;

public class Livro {

    private String titulo;
    private String autor;

    public String getTitulo() {
        return titulo;
    }

    public void setTitulo(String titulo) {
        this.titulo = titulo;
    }

    public String getAutor() {
        return autor;
    }

    public void setAutor(String autor) {
        this.autor = autor;
    }

    public void exibirDetalhes() {

        System.out.println("Título: " + titulo);
        System.out.println("Autor: " + autor);
    }
}
2 respostas

Main com as execuções de exemplos

package Exercicios.Aula2;

public class MainExercicios {
    public static void main(String[] args) {

        System.out.println("*************** Exercício 1 ***************");
        ContaBanco conta = new ContaBanco();
        conta.setNumeroConta(123456);
        conta.titular = "João";

        System.out.println("Número da conta: " + conta.getNumeroConta());
        System.out.println("Titular da conta: " + conta.titular);

        System.out.println("*************** Exercício 2 ***************");
        IdadePessoa pessoa = new IdadePessoa();
        pessoa.setNome("Maria");
        pessoa.setIdade(17);

        // Caso menor
        pessoa.verificarIdade();

        pessoa.setNome("Joaquina");
        pessoa.setIdade(20);

        // Caso maior
        pessoa.verificarIdade();

        System.out.println("*************** Exercício 3 ***************");
        Produto produto = new Produto();
        produto.setNome("Notebook");
        produto.setPreco(3000);
        produto.aplicarDesconto(10);

        System.out.println("Nome do produto: " + produto.getNome());
        System.out.println("Preço do produto: " + produto.getPreco());

        produto.setNome("Smartphone");
        produto.setPreco(1500);
        produto.aplicarDesconto(5);

        System.out.println("Nome do produto: " + produto.getNome());
        System.out.println("Preço do produto: " + produto.getPreco());

        System.out.println("*************** Exercício 4 ***************");
        Aluno aluno = new Aluno();
        aluno.setNome("José");
        aluno.setNotas(new double[]{7.5, 8.5, 9.0});

        System.out.println("Nome do aluno: " + aluno.getNome());
        System.out.printf("Média do aluno: %.2f%n", aluno.calcularMedia());

        System.out.println("*************** Exercício 5 ***************");
        // Utilizando o método construtor
        Livro livro = new Livro();
        livro.setTitulo("O Senhor dos Anéis");
        livro.setAutor("J. R. R. Tolkien");

        livro.exibirDetalhes();

        // Sem utilizar o método construtor, porém utilizando getter para print
        Livro livro2 = new Livro();
        livro2.setTitulo("Fundação");
        livro2.setAutor("Isaac Asimov");

        System.out.println("Título 2: " + livro2.getTitulo());
        System.out.println("Autor 2: " + livro2.getAutor());

    }
}

Oi Gabriel,

Parabéns pela dedicação em resolver os exercícios! 👏

Seu código está bem estruturado e demonstra bom entendimento dos conceitos de classes e objetos. 👍

Notei que você utilizou corretamente os modificadores de acesso private e public, além de getters e setters.

A lógica dos métodos também está correta, como o cálculo da média do aluno e a aplicação de desconto no produto.

A classe ContaBanco possui um atributo titular como public, o que não é recomendado.

O ideal seria torná-lo private e criar um getter e setter para ele, seguindo o padrão dos outros atributos.

🤓 Para saber mais: Documentação oficial sobre modificadores de acesso em Java

Continue praticando e explorando os recursos da linguagem Java. 💪