Exercício 1: Crie uma classe chamada Ingresso que
possui um valor em reais e um método imprimeValor().
a. crie
uma classe VIP, que herda Ingresso e possui um valor adicional. Crie um método
que retorne o valor do ingresso VIP (com o adicional incluído).
b. crie
uma classe Normal, que herda Ingresso e possui um método que imprime:
"Ingresso Normal".
c. crie
uma classe CamaroteInferior (que possui a localização do ingresso e métodos
para acessar e imprimir esta localização) e uma classe CamaroteSuperior, que é
mais cara (possui valor adicional). Esta última possui um método para retornar
o valor do ingresso. Ambas as classes herdam a classe VIP.
package herança;
import java.io.PrintStream;
public class Ingresso {
public float ValorIngresso;
public float
getValorIngresso(){
return this.ValorIngresso;
}
public void
setValorIngresso(float valorIngresso){
this.ValorIngresso =
valorIngresso;
}
public void
imprimeValor(float valor){
valor = this.ValorIngresso;
System.out.printf("Valor do Igresso:"+ valor);
}
}
|
package herança;
public class VIP extends Ingresso {
public float
ValorAdicional;
public float
getValorAdicional(){
return this.ValorAdicional;
}
public void setValorAdicional(float
valorAdicional){
this.ValorAdicional =
valorAdicional;
}
public float
valorIngressoVip(float valoringresso){
this.ValorIngresso =
valoringresso;
return
this.ValorIngresso + (this.ValorAdicional* this.ValorIngresso);
}
}
|
package herança;
public class Normal extends Ingresso{
public void
imprimeingressoNormal(float valor){
valor =
this.ValorIngresso;
System.out.println("Ingresso Normal:"+ valor );
}
}
|
package herança;
public class CamaroteInferior extends VIP{
String LocalIngresso;
public String
getLocalIngresso(){
return
this.LocalIngresso;
}
public void
setLocalIngresso(String local){
this.LocalIngresso =
local;
}
public String
acessaLocalizacao(){
return
this.LocalIngresso;
}
public void
imprimeLocalizacao(String local){
local =
this.LocalIngresso;
System.out.println("Local:"+ local);
}
}
|
package herança;
public class CamaroteSuperior extends VIP{
float TaxaAdicional;
public void
setTaxaAdicional(float valor){
this.TaxaAdicional =
valor;
}
public float
getTaxaAdicional(){
return
this.TaxaAdicional;
}
public float
valorIngressoAdd(float valor){
valor=
this.ValorAdicional;
float valorAdd
=(this.TaxaAdicional*this.ValorIngresso)*2+this.ValorIngresso;
return valorAdd;
}
}
|
package herança;
public class Herança {
public static void main(String[]
args) {
Ingresso ingresso = new
Ingresso();
Normal normal = new
Normal();
CamaroteInferior
camaroteinferior = new CamaroteInferior();
CamaroteSuperior
camarotesuperior = new CamaroteSuperior();
VIP vip = new VIP();
ingresso.setValorIngresso(71);
vip.setValorAdicional(0.7f);
camaroteinferior.setLocalIngresso("terreo");
camarotesuperior.setTaxaAdicional(0.5f);
normal.setValorIngresso(70);
normal.imprimeingressoNormal(normal.getValorIngresso());
System.out.println("Ingresso
Vip:"+vip.valorIngressoVip(ingresso.getValorIngresso()));
System.out.println("Ingresso Vip Camarote
Inferior:"+vip.valorIngressoVip(ingresso.getValorIngresso()));
camaroteinferior.imprimeLocalizacao(camaroteinferior.getLocalIngresso());
camarotesuperior.setValorAdicional(35);
camarotesuperior.setValorIngresso(70);
System.out.println("Ingresso Vip Camarote Superior:"+
camarotesuperior.valorIngressoAdd(vip.getValorAdicional()));
}
}
|
a. crie uma classe Novo, que herda Imovel e possui um adicional no preço. Crie métodos de acesso e impressão deste valor adicional.
b. crie uma classe Velho, que herda Imovel e possui um desconto no preço. Crie métodos de acesso e impressão para este desconto.
package heranca2;
public class Imovel {
float
preco;
String
endereco;
public
void getPreco(float preco){
this.preco
= preco;
}
public
float setPreco(){
return
this.preco;
}
}
|
package heranca2; public class Novo extends Imovel{ public float addPreco; public float setAddPreco(){ return this.addPreco; } public void getAddPreco(float preco){ this.addPreco = preco; } public void impremeAddPreco(float preco){ this.addPreco = preco *this.preco; System.out.println("Valor:"+ (this.addPreco+this.preco)); } } |
package heranca2; public class Velho extends Imovel { public float desPreco; public void getDesPreco(float preco){ this.desPreco = preco; } public float setDesPreco(){ return this.desPreco; } public void DescPreco(float preco){ this.desPreco = preco *this.preco; System.out.println("Valor:"+ (this.desPreco+this.preco)); } } |
package heranca2; import java.util.Scanner; public class Heranca2 { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); Imovel imovel = new Imovel(); Novo novo = new Novo(); Velho velho = new Velho(); System.out.println("Digite 1 para Imovel NOVO e 2 para Imovel VELHO"); int op; op = entrada.nextInt(); switch(op){ case 1: novo.getAddPreco(0.5f); novo.getPreco(125000f); novo.impremeAddPreco(novo.setAddPreco()); break; case 2: velho.getDesPreco(0.5f); velho.getPreco(125000f); velho.DescPreco(velho.setDesPreco()); } } } |
VLWWW VC ME SALVOU, SÓ NO FINAL QUE FICOU MEIO CONFUSO MAS ME SALVOU!
ResponderExcluir