2
respostas

[Projeto] Compartilhando um exemplo de uma locadora de filmes. OBS PROJETO EM DESENVOLVIMENTO, sugestões são bem vindas

package locadoratop;

public class Locadora {

Cliente cliente;
Filme filmes;
String situacao;
Aluguel alugueis;    

}

package locadoratop;

public class Filme {

private String nomeFilme;
private String genero;
private String Classificacao;
private int idFilme;
private String duracao;
String situacao;


public void disponibilidade(String situacao) {

    if (this.situacao == "disponivel") {
        System.out.println("Filme Disponivel");
    } else
        System.out.println("Filme Alugado");
}

public String getDuracao() {
    return duracao;
}

public void setDuracao(String duracao) {
    this.duracao = duracao;
}

public int getIdFilme() {
    return idFilme;
}

public void setIdFilme(int idFilme) {
    this.idFilme = idFilme;
}

public String getClassificacao() {
    return Classificacao;
}

public void setClassificacao(String classificacao) {
    Classificacao = classificacao;
}

public String getGenero() {
    return genero;
}

public void setGenero(String genero) {
    this.genero = genero;
}

public String getNomeFilme() {
    return nomeFilme;
}

public void setNomeFilme(String nomeFilme) {
    this.nomeFilme = nomeFilme;
}

}

package locadoratop;

public class Cliente {

private String nome;
private int id;
private String cpf;
private String endereco;

public String getNome() {
    return this.nome;
}

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

public String getCpf() {
    return cpf;
}

public void setCpf(String cpf) {
    this.cpf = cpf;
}

public String getEndereco() {
    return endereco;
}

public void setEndereco(String endereco) {
    this.endereco = endereco;
}

public int getId() {
    return id;
}

public boolean setId(int id) {
    if ((id > 0) && (id <= 100)) {
        this.id = id;
        return true;
    } else {
        System.out.println("ID invalido! Digite um ID de 1 a 100");
        return false;
    }
}

}

package locadoratop;

public class Aluguel {

String locatario;
int idAluguel;
int diasAlugado;
String dataDevolucao;
int valorDaDiaria = 5;
int total;

public void diasLocados(int dias) {
    this.diasAlugado = dias;
}

}

package locadoratop;

public class TestaLocadora {

public static void main(String[] args) {

    Locadora locadora = new Locadora();

    locadora.cliente = new Cliente();


    locadora.cliente.setNome("Leonardo");
    locadora.cliente.setCpf("111.111.111-11");
    locadora.cliente.setEndereco("Brasil");

    locadora.filmes = new Filme();
    locadora.filmes.setNomeFilme("Praticando Composição de Objetos");
    locadora.filmes.setClassificacao("Livre");
    locadora.filmes.setDuracao("1h45min");
    locadora.filmes.setGenero("Educacional");
    locadora.filmes.setIdFilme(1256);
    locadora.filmes.situacao = "alugado";

    Aluguel dvds = new Aluguel();
    dvds.idAluguel = 154;
    dvds.locatario = locadora.cliente.getNome();
    dvds.dataDevolucao = "28 de Janeiro de 2023";
    // dvds.quantidade = 1;
    dvds.diasLocados(3);
    dvds.total = dvds.diasAlugado * dvds.valorDaDiaria;

    System.out.println(" DADOS DO CLIENTE");
    System.out.println("------------------");
    System.out.println("Cliente: " + locadora.cliente.getNome());
    System.out.println("CPF :" + locadora.cliente.getCpf());
    System.out.println("Endereço: " + locadora.cliente.getEndereco());

    System.out.println();
    System.out.println(" DADOS DO FILME");
    System.out.println("----------------");
    System.out.println("Nome do Filme: " + locadora.filmes.getNomeFilme());
    System.out.println("ID do filme: " + locadora.filmes.getIdFilme());
    System.out.println("Classificação Etaria: " + locadora.filmes.getClassificacao());
    System.out.println("Duração: " + locadora.filmes.getDuracao());
    System.out.println("Genero: " + locadora.filmes.getGenero());

    System.out.println();
    System.out.println(" SITUAÇÃO DO FILME");
    System.out.println("--------------------");
    System.out.println("Nome do Filme: " + locadora.filmes.getNomeFilme());
    locadora.filmes.disponibilidade(locadora.situacao);
    System.out.println("Locatario: " + dvds.locatario);
    System.out.println("Id do filme: " + locadora.filmes.getIdFilme());
    System.out.println("Total pago pelas: " + dvds.diasAlugado + " diarias é de R$" + dvds.total);
    System.out.println("Data de devolução: " + dvds.dataDevolucao);
}

}

!saida ](https://cdn1.gnarususercontent.com.br/1/1751099/ff6cf532-9d09-409c-befb-db90ee650da0.png)

2 respostas

Oi Leonardo! Tudo certo?

Muuito legal sua ideia de praticar, achei que suas classes ficaram muito bem organizadas e você usou vários conceitos da orientação a objetos. Fique à vontade para continuar compartilhando seus programas conosco!

A única mudança que eu faria seria trocar o nome da primeira variável de cliente01 para locadora, deixando bem claro sobre o que se trata aquele tipo, uma vez que podemos confundir e achar que a variável cliente01 se refere a um Cliente.

Uma última sugestão: à medida que for aprendendo mais conceitos, tente evoluir seu projeto e vá deixando tudo no Github. Serve tanto para você relembrar o que já fez quanto para usar como um portfólio.

Bons estudos!

Muito Obrigado pelo feed back Iasmin, farei as alterações.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software