Sistemas de Locação de Itens, utilizando Java e Interface Gráfica

2 respostas
L

[color=orange]Olá pessoal, será que alguém por obséquio pode me ajudar com essa questão?[/color]

[color=green]Construir um software, utilizando Java e Interface Gráfica (Swing) que controle empréstimos de itens entre amigos que trabalham numa certa empresa; qualquer pessoa do grupo pode oferecer seus itens pessoais para empréstimos ou pegando itens disponibilizados pelos outros colegas.
Deve-se criar pelo menos três tipos de itens emprestáveis, que corresponderão a implementações da classe item e da interface emprestável.[/color]

public abstract class Item{                           public interface Emprestavel{ 
private String nome Item;                             public void empresta Item();
private Socio socio;                                  public void devolve Item();
private boolean emprestado;                           } 
// utilize Getters and Setters
}

[color=green]As funcionalidades a serem implementadas são:

[/color][color=brown] -> Cadastro de Sócios; Incluir, Excluir e Consultar Sócios:

Uma vez cadastrado, sempre que o sócio entrar no sistema ele fornece a sua identificação (passando o CPF, por exemplo);

-> Cadastro dos itens pelos sócios:

Permitir ao sócio incluir, excluir e consultar seus itens na inclusão, o usuário deve selecionar a quem o item pertence;

-> Pesquisa de itens:

Permitir ao sócio consultar os itens cadastrados no sistema;

-> Empréstimo de item:

Através da tela de pesquisa de itens o usuário poderá selecionar um item de interesse seu para tomar emprestado, se o item estiver disponível o sistema deve emprestá-lo ao usuário e, marcar o item como indisponível. Senão uma exceção deve ser disparada.
[/color]

[color=orange]OBS.: Um usuário pode alugar no máximo três itens ao mesmo tempo.[/color]

[color=brown] -> Devolução do item:

O locatário informa ao sistema que o item está devolvido. O item passa a ficar disponível para locação novamente.

[/color]

-> Requisitos:[color=green] [/color]

[color=brown] Divisão das classes em pacotes;
Encapsulamento de classes;
Uso de polimorfismo.
[/color]

[color=olive]Ex.: public class DVD extendes Item implements Emprestavel{
private int ano;
private String diretor;
private Ator[]itens;

[/color]
*[color=red] [/color] [color=darkred]Não estou sabendo continuar a resolver esta questão, por isso pesso por obséquio, será que alguém pode me dá uma idéia, dica de como implementar a questão.... Qualquer coisa que possa "clarear as idéias".... [/color]

Começei fazendo isto:[color=darkblue] [/color]

public class Socio {

   private String cpf;

   public Socio() {
      super();
   }

   // getters e setters
}
public interface Emprestavel {
               public abstract void empresta(Item item);
               public abstract void devolve(Item item);
               public abstract void isPodePegarEmprestado();
}
//Está dando erro de compilação na linha abaixo (2)!
public class Item implements Emprestavel {
    private String nome;
    private Boolean emprestado;
    private Socio socio;

    public Item() {
        super();
    }
    public void empresta(Item item) {
        if (!this.isPodePegarEmprestado()) {
            try {
                throw new Exception("Usuário não pode pegar mais de 3 ítens emprestado");
                } catch (Exception ex) {
                Logger.getLogger(Item.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
    public void devolve(Item item) {


    }

// Verifica se o usuário pode pegar emprestado. Máximo de ítens a ser pego: 3

// Está dando erro de compilação na linha abaixo (26)!
    public boolean isPodePegarEmprestado() {

    }

    public void PodePegarEmprestado() {
        throw new UnsupportedOperationException("Not supported yet.");
    }

// getters e setters.
}

Agora pensando numa base de dados em nível de memória, estou tentando implememntar uma classe com uma lista e ações de acesso a dados.

import java.util.ArrayList;
import java.util.List;

public final class Repositorio {
    private List<Item> itens;


    public Repositorio() {
        this.itens = new ArrayList<Item>();
    }

    public void inserir(Item item) {

    }

// Lista todos os ítens cadastrados no sistema.

// Está dando erro de compilação na linha abaixo (20)!

    public List<Item> listar() {

    }

// Lista todos os ítens de um sócio.

// Está dando erro de compilação na linha abaixo (28)!

    public List<Item> listarPorSocio(Socio socio) {


    }
}

2 Respostas

L

E aí amiga…
Primeiramente naquela classe Item, deve estar dando erro pq voce deve retornar algo em booleano…

por exemplo return true;

Na classe Repositorio não está compilando pq tbm deve-se retornar uma lista…

faz o teste: return (List) socio;

L

Fiz estas implementações, mas esta que vc falou: return (List) socio; não deu certo!

Criado 8 de dezembro de 2010
Ultima resposta 8 de dez. de 2010
Respostas 2
Participantes 2