3
respostas

Desafio 2 - Controlando o acesso e a escrita nos dados da aplicação

1 - Crie uma classe ContaBancaria com os seguintes atributos: numeroConta (privado), saldo (privado) e titular (publico). Implemente métodos getters e setters para os atributos privados.

package desafios;

public class ContaBancaria {
    private long numeroConta;
    private double saldo;
    private int titular;

    public ContaBancaria(long numeroConta, double saldo, int titular) {
        this.numeroConta = numeroConta;
        this.saldo = saldo;
        this.titular = titular;
    }

    public long getNumeroConta() {
        return numeroConta;
    }

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

    public double getSaldo() {
        return saldo;
    }

    public void setSaldo(double saldo) {
        this.saldo = saldo;
    }

    public int getTitular() {
        return titular;
    }

    public void setTitular(int titular) {
        this.titular = titular;
    }

    public void exibirConta() {
        System.out.println("Conta: " + getNumeroConta());
        System.out.printf("Saldo: %.2f\n", getSaldo());
        System.out.println("Titular: " + getTitular());
    }
}

2 - Crie uma classe idadePessoa com os atributos privados nome e idade. Utilize métodos getters e setters para acessar e modificar esses atributos. Adicione um método verificarIdade que imprime se a pessoa é maior de idade ou não.

package desafios;

public class IdadePessoa {
    private String nome;
    private int idade;

    public IdadePessoa(String nome, int idade) {
        this.nome = nome;
        this.idade = 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 String verificarIdade(int idade) {
        return idade >= 18? "Pessoa maior de idade" : "Pessoa menor de idade";
    }

    public void informacoesPessoa() {
        System.out.println("Nome: " + nome);
        System.out.println("Idade: " + idade);
        verificarIdade(idade);
    }
}

3 - Desenvolva uma classe Produto com os atributos privados nome e preco. Utilize métodos getters e setters para acessar e modificar esses atributos. Adicione um método aplicarDesconto que recebe um valor percentual e reduz o preço do produto.

package desafios;

public class Produto {
    private String nome;
    private double preco;

    public Produto(String nome, double preco) {
        this.nome = nome;
        this.preco = 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) {
        preco -= preco * (percentual / 100);
    }
}

4 - Desenvolva uma classe Aluno com os atributos privados nome e notas. Utilize métodos getters e setters para acessar e modificar esses atributos. Adicione um método calcularMedia que retorna a média das notas do aluno.

package desafios;

public class Aluno {
    private String nome;
    private double nota1;
    private double nota2;
    private double nota3;

    public Aluno(String nome, double nota1, double nota2, double nota3) {
        this.nome = nome;
        this.nota1 = nota1;
        this.nota2 = nota2;
        this.nota3 = nota3;
    }

    public String getNome() {
        return nome;
    }

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

    public double getNota1() {
        return nota1;
    }

    public void setNota1(double nota1) {
        this.nota1 = nota1;
    }

    public double getNota2() {
        return nota2;
    }

    public void setNota2(double nota2) {
        this.nota2 = nota2;
    }

    public double getNota3() {
        return nota3;
    }

    public void setNota3(double nota3) {
        this.nota3 = nota3;
    }

    public double calcularMedia() {
        return (nota1 + nota2 + nota3) / 3;
    }

    public void exibirInformacoes() {
        System.out.println("Nome: " + nome);
        System.out.println("Nota1: " + nota1);
        System.out.println("Nota2: " + nota2);
        System.out.println("Nota3: " + nota3);
        System.out.printf("Média: %.2f\n\n", calcularMedia());
    }
}
3 respostas

5 - Desenvolva uma classe Livro com os atributos privados titulo e autor. Utilize métodos getters e setters para acessar e modificar esses atributos. Adicione um método exibirDetalhes que imprime o título e o autor do livro.

package desafios;

public class Livro {
    private String titulo;
    private String autor;

    public Livro(String titulo, String autor) {
        this.titulo = titulo;
        this.autor = 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("Titulo: " + titulo);
        System.out.println("Autor(a): " + autor);
    }
}

Classe Main

import desafios.Aluno;
import desafios.ContaBancaria;
import desafios.IdadePessoa;
import desafios.Produto;
import desafios.Livro;

public class Main {
    public static void main(String[] args) {
        // Desafio 1
        ContaBancaria conta = new ContaBancaria(1234567890, 5200.00, 987654321);
        conta.exibirConta();
        System.out.println();

        // Desafio 2
        IdadePessoa pessoa = new IdadePessoa("Gabrielly", 23);
        pessoa.informacoesPessoa();
        System.out.println();

        // Desafio 3
        Produto produto = new Produto("Notebook Dell", 4300.00);

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

        produto.aplicarDesconto(20);
        System.out.println("Preço com desconto: " + produto.getPreco());
        System.out.println();

        // Desafio 4
        Aluno aluno1 = new Aluno("Joãozinho", 8.5, 9.8, 7.4);
        Aluno aluno2 = new Aluno("Maria", 9.6, 8.8, 8.2);

        aluno1.exibirInformacoes();
        aluno2.exibirInformacoes();

        System.out.println();

        // Desafio 5
        Livro livro = new Livro("Orgulho e Preconceito", "Jane Austen");
        livro.exibirDetalhes();

    }
}

Oi, Gabrielly! Tudo bem?

Obrigada por compartilhar seu código com a gente.

Gostei bastante da estrutura das classes e dos métodos que você implementou para controlar o acesso e a escrita dos dados. Os métodos getters e setters estão bem organizados, facilitando a manutenção do código.

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!