1. Diga quais são os 8 tipos primitivos em Java e quantos
bits cada um ocupa na memória.
2. Descreva as diferenças entre aplicações e applets
em
termos de:
b = a;
objeto.metodo(a);
// imprime a
// imprime b
6. Explique o papel das palavras reservadas try e catch no tratamento de exceções em Java.
7. Qual é a diferença entre sobrecarga (overloading em inglês) e polimorfismo em Java?
8. Ligue termos correspondentes abaixo:
objeto | campo |
classe | variável |
método | função |
atributo | procedimento |
tipo |
9. Suponha que tenhamos uma classe Shape em Java com subclasses Rectangle e Circle, sendo que nenhuma destas duas últimas é subclasse da outra, e também uma subclasse Square de Rectangle. Suponha ainda que os objetos s, r, c e q sejam instâncias das classes Shape, Rectangle, Circle e Square, respectivamente. Quais atribuições abaixo são permitidas e quais não são:
s = c;
r = s;
q = c;
s = q;
10. O que é uma classe abstrata em Java? Qual é a utilidade de se ter uma classe abstrata? Existe algum exemplo de classe abstrata (ou que poderia ser abstrata) no código do gerenciador do jogo que constitui nosso projeto de implementação nesta disciplina?
11. O que significa ``herança múltipla'' em orientação a objetos? Existe algum mecanismo de herança múltipla em Java?
12. Em relação a threads, diga qual é a diferença entre definir uma classe usando
implements Runnable
e definir usando
extends Thread
13. Um método ou atributo é chamado estático quando é definido através da palavra reservada static. Qual é a diferença entre atributos estáticos e não estáticos? Qual é a diferença entre métodos estáticos e não estáticos?
14. Qual é a diferença entre instâncias da classe String e instâncias da classe StringBuffer ?
15. Se s1 e s2 são instâncias
da classe StringBuffer, qual é a diferença
entre a comparação s1 == s2 e a comparação
s1.equals(s2) ?