UNIVERSIDADE FEDERAL DO RIO DE JANEIRO
Programação II - Lista de Exercícios - Classes
1. Implemente uma classe Veículo com as seguintes propriedades:
a. Um veículo tem um certo consumo de combustível (medidos em km/litro), uma
certa quantidade de combustível no tanque e uma capacidade máxima de
combustível.
b. O consumo e a capacidade do tanque são especificados no construtor da classe, e o
nível de combustível inicial é 0.
c. Forneça um método mover(km) que receba a distância em quilômetros e reduz o
nível de combustível no tanque baseado no seu consumo.
d. Forneça um método getCombustivel(), que retorna o nível atual de combustível.
e. Forneça um método abastecer(litros), para abastecer o tanque.
f. Crie defesas em seu método para não permitir que o carro fique com quantidade
negativa de combustível e nem que ultrapasse a capacidade máxima do tanque.
Lembre-se de também não permitir que o carro se mova quando estiver sem
combustível. Para essas situações imprima mensagens informando o problema.
g. Teste sua classe: Crie um veículo, abasteça o tanque, ande, mande mostrar a
quantidade de combustível e teste as defesas que você criou para não permitir
situações impossíveis.
2. Crie uma classe funcionário. Ela deve ter o nome do funcionário, o departamento onde ele
trabalha, seu salário, a data de entrada na empresa, seu CPF e um valor booleano, que
indique se o funcionário ainda está ativo na empresa ou se foi mandado embora.
a. Além do construtor, você deve criar métodos para alterar/acessar atributos da
classe
b. Crie um método bonificar(valor) que aumenta o salário do funcionário ao adicionar
um valor passado como parâmetro.
c. Crie um método demitir(), que não recebe parâmetro algum, apenas modifica o
valor booleano indicando que o funcionário não trabalha mais na empresa.
d. Crie defesa para não permitir que um funcionário inativo na empresa seja
bonificado.
e. Teste sua classe: Crie vários objetos, chame seus métodos e teste suas defesas.
3. Crie uma classe chamada Triangulo contendo os seguintes atributos e métodos:
a. Atributos: tamanho dos 3 lados.
b. Métodos:
ehValido: Retorna verdadeiro se o triângulo é válido (o lado maior deve ser menor
que a soma dos dois outros lados), senão retorna falso;
tipoTriangulo: retorna o tipo do triângulo. Se possuir os 3 lados iguais, é
equilátero. Se possuir apenas 2 lados iguais, é isósceles e se possuir os 3 lados
com valores diferentes é escaleno;
calculaPerimetro: retorna o perímetro do triângulo;
calculaArea: retorna a área do triângulo.