Buscar

ExerciciosJava_03_LPOO

Prévia do material em texto

Curso de POO usando JAVA
Exercícios de Fixação – Parte 3
Objetivos: Entender o mecanismo de herança e os seus benefícios relacionados a reuso. Dominar os princípios e as regras de conversão implícita e explícita de tipos não-primitivos. 
Construa uma sub-classe de Cliente chamada ClienteEspecial, com mais um atributo que represente um percentual de bônus (real). Esta classe deve ter 01 construtor, recebendo valores dos seus quatro atributos. Esta mesma classe deve ter um método que calcula qual o valor mensal de bônus que o cliente ganha. O valor mensal de bônus é dado pela fórmula: 
valor mensal de bônus = salário*(1+(percentual de bônus / 100)).
Construa uma sub-classe de Conta chamada ContaEspecial, com mais um atributo real que representa um percentual de prêmio mensal sobre saldo. Esta classe deve ter 01 construtor, recebendo valores dos seus quatro atributos. Esta mesma classe deve ter um método que calcula qual o valor mensal de prêmio que a conta terá como crédito. O valor mensal de prêmio é dado pela fórmula: 
valor mensal de prêmio = saldo*(1+(percentual de prêmio mensal sobre saldo / 100)).
Dadas as classes do Quadro 1 e os trechos de código do Quadro 2, indique se o código não compila, se compila mas não roda ou se compila e roda. Nos dois primeiros casos, justifique sua resposta.
	public class Arma {}
public class ArmaFogo extends Arma {}
public class ArmaBranca extends Arma {}
public class Faca extends ArmaBranca {}
	public class Espada extends ArmaBranca {}
public class Pistola extends ArmaFogo {}
public class Fuzil extends ArmaFogo {}
Quadro 1
	Faca f = new Faca();
ArmaBranca ab = f;
Arma a = ab;
Fuzil r = (Fuzil)a;
	Pistola e = new Pistola();
Arma a = e;
ArmaFogo af = (Pistola)e;
	Arma a = new ArmaFogo();
ArmaFogo af = (ArmaFogo)a;
Espada e = (Espada)af;
	ArmaBranca ab = new Faca();
Arma a = ab;
ArmaFogo af = (Pistola)a;
Quadro 2

Continue navegando