Você está na página 1de 3

INSTITUTO DE Universidade Federal do Rio de Janeiro

COMPUTAÇÃO Centro de Ciências Matemáticas e da Natureza

Sétima lista de exercícios de Programação


Orientada a Objetos

Questões teóricas
1. O que é a API de Collections do Java?
2. Por que é recomendado o uso de Generics (<Classe>) junto com as classes da API
de Collections?
3. Qual as diferenças entre listas (List) e conjuntos (Set) dessa API Collections do
Java?
4. O que são exceções? Qual o principal motivo para se usar exceções em um
programa em POO?
5. Dado o programa a seguir:
class Exercicio {
public static int lista[] = new int[3];
public static void main(String[] args) {
try {
System.out.println(“inicio da main”);
Exercicio.metodo1();
System.out.println(“fim da main”);
catch(Exception e) {
System.out.println(“Exceção genérica capturada”);
}
}
public static void metodo1() {
try {
System.out.println(“inicio do metodo1”);
Exercicio.metodo2();
System.out.println(“fim do metodo1”);
catch(IndexOutOfBoundsException e) {
System.out.println(“Exceção índice fora do limites capturada”);
INSTITUTO DE Universidade Federal do Rio de Janeiro

COMPUTAÇÃO Centro de Ciências Matemáticas e da Natureza

}
}
public static void metodo2() {
try {
System.out.println(“inicio do metodo2”);
Exercicio.metodo3();
System.out.println(“fim do metodo2”);
catch(NullPointerException e) {
System.out.println(“Exceção ponteiro nulo capturada”);
}
}
public static void metodo3() {
try {
System.out.println(“inicio do metodo3”);
// comando(s) a ser(em) descrito(s)
System.out.println(“fim do metodo3”);
catch(ArithmeticException e) {
System.out.println(“Exceção erro aritmético capturada”);
}
}
}
a. Apresente a saída do programa da forma que está, só com comentário.
b. Apresente a saída do programa quando o comando no metodo3 for:
lista[0] = lista[4];
c. Apresente a saída do programa quando o comando no metodo3 forem:
String s = null;
char c = s.charAt(0);
d. Apresente a saída do programa quando o comando no metodo3 for:
int div = 2/0;
INSTITUTO DE Universidade Federal do Rio de Janeiro

COMPUTAÇÃO Centro de Ciências Matemáticas e da Natureza

Questões práticas
Cada exercício prático vai estar no pacote lista_7.exec_X, onde X é o
número da questão. Ex.: lista_7.exec_6

6. Implementar uma Factory que crie funcionários especializados (seguindo as listas


anteriores): Líder, Engenheiro e Analista. Caso o usuário peça um tipo que não
existe, o método vai lançar uma exceção.
7. Crie exceções para as validações dos métodos de Funcionario e Lider das listas
anteriores
8. Implementar um Singleton Conversor para converter temperaturas recebidas em
Kelvin para celsius ou Fahrenheit, dependendo de uma configuração anterior. Dica:
Criar uma enum no Java para facilitar (Tipos Enum no Java: Como criar
enumerações em Java)

Você também pode gostar