Preciso de ajuda, não consigo desenvolver (contas de água e luz)

27 respostas Resolvido
iniciante
P

Crie uma classe abstrata chamada Conta, o construtor recebe um nome, um endereço, um método abstrato chamado calcularTotal e os métodos get e set. Crie também as classes ContaDeAgua e ContaDeLuz, ambas subclasses de Conta. O construtor das subclasses devem receber um nome, um endereço e, além disso:

 O construtor da classe ContaDeLuz deve receber também a quantidade de quilowatts consumida e o preço do quilowatt.


 O construtor da classe ContaDeAgua deve receber a quantidade de litros consumidos e o preço/litro.

No método main, crie 5 instâncias de ContaDeLuz e 5 instâncias de ContaDeAgua em um vetor do tipo Conta. Utilize um laço para percorrer os objetos do vetor e imprimir o valor total de cada conta através do método calcularTotal().

27 Respostas

RoinujNosde

Mesmo exercício: Preciso de Ajuda para executar um trabalho

P

vish,tem uma ideia de como faz?

Fefo80

Sim. Mas o que você já fez até agora?

P

ainda nada kkkkk

Fefo80

E você quer que a gente faça o trabalho pra você é? :wink:

Tente fazer a questão. Se tiver dúvidas específicas, pergunte. Se quiser alguém que faça tudo pra ti, contrate um freelancer.

P

tô sem ideia de como começar, o que colocar nas classes e tal

Fefo80

O enunciado da questão é muito claro e te diz o que colocar nas classes. Não precisa fazer nada mais do que o que tem lá. :slight_smile:

P

mas não sei nem o que é classe abstrata

wldomiciano

Tirando classe abstrata, vc já tem noção do que é uma classe normal? Sabe como declarar e instanciar?

P

isso eu sei

wldomiciano

Maravilha! Uma classe abstrata é, basicamente, uma classe que não pode ser instanciada. Vc declara ela como uma classe normal com a adição da palavra abstract, assim:

abstract class Conta {
/* ... */
}
P

isso dentro do main? ou fica como uma outra classe e ai ao inves de public class é só um public abstract class?

wldomiciano

É possível sim declarar a classe Conta dentro do método main, mas acredito que seu professor vai preferir que vc a declare num arquivo separado.

P

subclasse né?

wldomiciano

Isso. No arquivo Conta.java vc vai colocar como vc disse mesmo:

public abstract class Conta {}

E no arquivo ContaDeLuz.java vc vai colocar com o extends:

public class ContaDeLuz extends Conta {}
P

show, vou tentando aqui, vlw doido, tava perdidinho

P

image

assim mesmo?

wldomiciano

Pode ser assim sim.

P

fiz o metodo get e set, não conssigo o abstract


image

RoinujNosde

Tire a declaração do método getNome() de dentro do método main().

P

pronto

P

o problema é agora

P

metodo abstrato calculartotal

wldomiciano

Os métodos getNome, setNome, getEndereco e setEndereco seria melhor vc colocar na classe Conta.

O constructor com os parametros nome e endereco também deveria estar na classe Conta.

P

show, mas como monta esse abstract calculatotal?

wldomiciano
Solucao aceita

Seria algo assim:

public abstract class Conta {
// Constructor, getters e setters aqui…

abstract float calculaTotal();
}

E na classe ContaDeLuz seria algo assim:

public class CondaDeLuz extends Conta {
  float calculaTotal() {
    // aqui vai a lógica...
  }
}
P

vlw mano, deu certo aqui

Criado 2 de abril de 2021
Ultima resposta 4 de abr. de 2021
Respostas 27
Participantes 4