Gente por favor me ajude, construtores
gente tenho essas 2 classes com, os construtores das mesmas passando paramentros
da uma olhada ai por favor
e
agora essa é minha classe para teste
pois preciso criar um ArrayList<AluguelQuarto> contendo da posiçao 0 a 49 instancias de quartos e 50 a 60 instancia de chale
E esse metodo registrarEntrada() eu estou chamando ele no main(), para quando eu digitar os dados, os meus gets do contrutor pegar os valores
E certo fazer isso? Ou eu não entendo nada de programação O.O, e estou ate hoje programando de forma Estruturada.
Desde ja obrigado pelas dicas, e se poder fazer um código semelhante, para tirar minhas duvidas de como ficaria os construtores na classe main().
da uma olhada ai por favor
public class AluguelQuarto {
public AluguelQuarto() {
}
public AluguelQuarto(String nomeLocatario, int diaEntrada, int mesEntrada, int anoEntrada, int horaEntrada, int minutoEntrada) {
this.nomeLocatario = nomeLocatario;
this.diaEntrada = diaEntrada;
this.mesEntrada = mesEntrada;
this.anoEntrada = anoEntrada;
this.horaEntrada = horaEntrada;
this.minutoEntrada = minutoEntrada;
}
}
e
public class AluguelChale extends AluguelQuarto {
public AluguelChale() {
}
public AluguelChale(int numeroCamasExtras, String nomeLocatario, int diaEntrada, int mesEntrada, int anoEntrada, int horaEntrada, int minutoEntrada) {
super(nomeLocatario, diaEntrada, mesEntrada, anoEntrada, horaEntrada, minutoEntrada);
this.numeroCamasExtras = numeroCamasExtras;
}
}
agora essa é minha classe para teste
public class TestaCodigo{
public static void main(String[]agrs){
System.out.println(DIGITE O NUMERO DA OPÇÃO ESCOLHIDA:
+1 PARA ADD QUARTO
+2 PARA ADD CHALE);
opcaoMenu = scan.nextInt();
switch (opcaoMenu) {
case 1:
AluguelQuarto quarto = null;
quarto.registrarEntrada(); método para adicionar instancia de quarto
quarto = new AluguelQuarto(quarto.getNomeLocatario(), quarto.getDiaEntrada(), quarto.getMesEntrada(), quarto.getAnoEntrada(),
quarto.getHoraEntrada(), quarto.getMinutoEntrada());
pousada.addLista(quarto);
break;
case 2:
AluguelChale chale = null;
chale.registrarEntrada();// é claro que esse método esta sobre escrito, ok
chale = new AluguelChale(chale.getNumeroCamasExtras(), chale.getNomeLocatario(), chale.getDiaEntrada(), chale.getMesEntrada(),
chale.getAnoEntrada(), chale.getHoraEntrada(), chale.getMinutoEntrada());
pousada.addLista(chale);// método para adicionar instancia de chale
break;
}
}
pois preciso criar um ArrayList<AluguelQuarto> contendo da posiçao 0 a 49 instancias de quartos e 50 a 60 instancia de chale
E esse metodo registrarEntrada() eu estou chamando ele no main(), para quando eu digitar os dados, os meus gets do contrutor pegar os valores
public void registrarEntrada() {
System.out.println(\nDIGITE O NOME DO LOCATÁARIO);
this.nomeLocatario = scan.nextLine();
System.out.println(\nDIGITE A DIA ENTRADA);
this.diaEntrada = scan.nextInt();
System.out.println(\nDIGITE O MÊS DE ENTRADA);
this.mesEntrada = scan.nextInt();
System.out.println(\nDIGITE O ANO ENTRADA);
this.anoEntrada = scan.nextInt();
System.out.println(\nDIGITE A HORA DA ENTRADA);
this.horaEntrada = scan.nextInt();
System.out.println(\nDIGITE O MINUTO DA ENTRADA);
this.minutoEntrada = scan.nextInt();
}
E certo fazer isso? Ou eu não entendo nada de programação O.O, e estou ate hoje programando de forma Estruturada.
Desde ja obrigado pelas dicas, e se poder fazer um código semelhante, para tirar minhas duvidas de como ficaria os construtores na classe main().
Paulo Cesar
Curtidas 0
Respostas
Robson Teixeira
01/06/2012
Olá Paulo tudo bem???
kra você tem feito direitinho as alocações de Quarto e Chalé mas da uma olhada nesse trecho de
código abaixo tirado do seu post
AluguelQuarto quarto = null;
// o objeto quarto está null e quando tentar invocar o método registrarEntrada vai dar um NullPointerException.
quarto.registrarEntrada(); método para adicionar instancia de quarto
quarto = new AluguelQuarto(quarto.getNomeLocatario(), quarto.getDiaEntrada(), quarto.getMesEntrada(), quarto.getAnoEntrada(),
quarto.getHoraEntrada(), quarto.getMinutoEntrada());
agora você poderia fazer o código de aluguel de quarto de acordo com o código abaixo e o mesmo vale de exemplo para aluguel de chalé
AluguelQuarto quarto = new AluguelQuarto();
quarto.registrarEntrada(); método que popula o objeto quarto
pousada.addLista(quarto);
quanto a sua coleção que tem que ter um número limitado de instancias para alugar quarto e chalé sugiro que
você crie uma classe e a extenda de ArrayList e sobreescreva o método add onde você irá testar se a instancia
passada é um AluguelQuarto ou AluguelChale e some mais 1 em um contador de quartos que vai estar declarado em sua classe
ou some mais 1 em seu contador de chale e chame o super.add para que seja de fato adicionado o objeto em sua coleção.
att
robson
kra você tem feito direitinho as alocações de Quarto e Chalé mas da uma olhada nesse trecho de
código abaixo tirado do seu post
AluguelQuarto quarto = null;
// o objeto quarto está null e quando tentar invocar o método registrarEntrada vai dar um NullPointerException.
quarto.registrarEntrada(); método para adicionar instancia de quarto
quarto = new AluguelQuarto(quarto.getNomeLocatario(), quarto.getDiaEntrada(), quarto.getMesEntrada(), quarto.getAnoEntrada(),
quarto.getHoraEntrada(), quarto.getMinutoEntrada());
agora você poderia fazer o código de aluguel de quarto de acordo com o código abaixo e o mesmo vale de exemplo para aluguel de chalé
AluguelQuarto quarto = new AluguelQuarto();
quarto.registrarEntrada(); método que popula o objeto quarto
pousada.addLista(quarto);
quanto a sua coleção que tem que ter um número limitado de instancias para alugar quarto e chalé sugiro que
você crie uma classe e a extenda de ArrayList e sobreescreva o método add onde você irá testar se a instancia
passada é um AluguelQuarto ou AluguelChale e some mais 1 em um contador de quartos que vai estar declarado em sua classe
ou some mais 1 em seu contador de chale e chame o super.add para que seja de fato adicionado o objeto em sua coleção.
att
robson
GOSTEI 0