Buscar

Simulado

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Universidade do Oeste de Santa Catarina - UNOESC 
Disciplina: Prog. Orientada a Objetos 
Professor: Ricardo Antonello 
Simulado 
������������������������������������������������	
�
�����������������
��
������������
�
1) O que significa o código abaixo? Qual é sua finalidade? 
public interface IIndicador { 
 public boolean recalcula(); 
 public float getValor(int index); 
} 
É uma interface que pode ser implementada por 
uma classe ou mais classes, as classes que 
implementam interfaces devem implementar 
todos os métodos da interface. 
2) Utilizando, se necessário, o código da questão acima, 
complete o código para que a classe abaixo compile sem 
erros. 
public class MACD implements IIndicador { 
 public Boolean recalcula (){ 
 return true; 
 } 
 public float getValor(int index){ 
 this.index = index; 
 return index; 
 }} 
O código abaixo compila e executa. Somente foram 
retirados os métodos gets, sets e os imports. Altere o 
método compareTo para que, quando ordenada, uma lista de 
objetos do tipo Cotacao fiquem ordenados na ordem 
crescente da propriedade volume. 
public class Cotacao implements 
Comparable<Cotacao> { 
 private Date date; 
 private float open; 
 private float close; 
 private float max; 
 private float min; 
 private int operations; 
 private float volume; 
//construtor 
 public Cotacao(Date date, float open, float 
min, float max, float close, 
 int operations, float volume) { 
 this.date = date; 
 this.open = open; 
 this.close = close; 
 this.max = max; 
 this.min = min; 
 this.operations = operations; 
 this.volume = volume; 
 } 
//gets e sets 
// @Override 
// public int compareTo(Cotacao c) { 
// Date d = c.getDate(); 
// return this.date.compareTo(d); 
// } 
public int compareTo(Cotacao c) { 
//escreva seu codigo abaixo! 
 
} 
} 
3) Assinale V ou F: 
( F ) Métodos estáticos só podem existir em classes 
estáticas, ou seja, classes que possuam o modificador static 
na definição. Ex: public static class NewClass 
{...}. 
( V ) Não é possível criar classes estáticas. 
( V ) Não é necessário criar uma instancia para utilizar um 
método estático. 
( V ) A partir de um objeto instanciado de uma classe com 
métodos estáticos é possível acessar os métodos estáticos e 
não estáticos. 
( F ) A partir de um objeto instanciado de uma classe com 
métodos estáticos é possível acessar os métodos estáticos 
apenas. 
( F ) A partir de um objeto instanciado de uma classe com 
métodos estáticos é possível acessar apenas os métodos 
não estáticos. 
4) “Um template, um modelo a partir do qual objetos são 
criados”. Esta definição se refere a: 
a) Classe 
b) Objeto 
c) Instancia 
d) Encapsulamento 
e) Construtor 
f) Herança 
g) Polimorfismo 
5) Encapsulamento ou data hiding é: 
a) Combinar dados e comportamento em um pacote e esconder 
sua implementação. 
b) Derivar uma classe de outra classe através da palavra chave 
extends em java. herança
Universidade do Oeste de Santa Catarina - UNOESC 
Disciplina: Prog. Orientada a Objetos 
Professor: Ricardo Antonello 
c) Permitir que o mesmo nome de método seja usado diversas 
vezes, possibilitando esconder o comportamento executado 
em cada um. 
d) Encapsulamento é criar métodos que não possuem 
parâmetros, pois, dessa forma, os dados necessários já 
estarão dentro do método. 
e) Nenhuma das alternativas. 
6) Em Java o tempo é representado por: 
a) A classe Time para o calendário gregoriano padrão utilizado 
no Brasil e nos EUA. 
b) Um calendário através da classe Calendar que possui dias, 
meses e anos para qualquer padrão no mundo. 
c) Pelo conjunto de 3 inteiros que representam ano, mês e dia. 
d) A classe Date que é um número que representa o tempo, 
positivo ou negativo, a partir de 1970 no dia 1º de janeiro as 
00h00. 
e) Pela classe Time que representa o tempo de maneira 
universal dentro da linguagem Java. 
7) O seguinte código compila e executa: 
GregorianCalendar c = new 
GregorianCalendar(2011,5,19); 
System.out.println(c.get(GregorianCalendar
.DAY_OF_WEEK)); 
c.add(GregorianCalendar.DAY_OF_MONTH, -
1); 
System.out.println(c.get(GregorianCalenda
r.DAY_OF_WEEK)); 
Se na primeira linha impressa, aparece o valor 5 
representando a quinta-feira, na segunda linha impressa 
aparecerá qual informação? 
a) 4 
b) 5 
c) 6 
d) Sexta-feira 
e) Quinta-feira 
f) Wednesday 
8) Um construtor deve ter? 
a) Tipo de retorno null 
b) No mínimo um parâmetro de qualquer tipo 
c) No mínimo um parâmetro String 
d) Tipo modificar de acesso public 
e) Nenhuma das alternativas anteriores 
9) Sobre herança analise o código abaixo e responda. 
public class Animal{ 
 public void respirar() {…} 
} 
public class Mamifero extends Animal{ 
 public void mamar() {…} 
} 
public class Gato extends Mamifero{ 
 public void miar() {…} 
} 
Public classe Ambiente{ 
 public static void main(String a[]){ 
 Gato g = new Gato(); 
 // *** // 
 } 
} 
a) Substituindo // *** // por: g.miar(); gera erro de execução pois 
o gato não pode miar. 
b) Substituindo // *** // por: g.respirar();gera erro pois o gato 
extende de Mamifero que não possui este método reescrito. 
c) Substituindo // *** // por: g.respirar(); não gera erro pois o 
gato extende este comportamento de Mamifero que por sua 
vez extende de Animal. 
d) Substituindo // *** // por: g.toString(); gera erro de execução 
pois o gato não pode utilizar métodos da classe Object já 
que extendeu a classe Mamifero. 
e) Nenhuma das alternativas anteriores 
10) Sobre o código abaixo, relacionado a parâmetros 
implícitos e explícitos, assinale a alternativa que 
corresponde a saída do programa: 
public class G1 { 
 public static void main(String e[]) { 
 String a="b", b="c"; 
 altera("d"); 
 System.out.print(a); 
 } 
 private static void altera(String a){ 
 a="c"; 
 } 
} 
a) Imprime a 
b) Imprime b 
c) Imprime c 
d) Imprime d 
e) Imprime e 
11) Sobre herança analise o código abaixo e responda o 
que a classe Ambiente imprime quando executada. 
public class Animal{ 
 public void respirar() {…} 
} 
public class Mamifero extends Animal{ 
 public String mamar() { return “sem 
mamadeira”;} 
} 
public class Homem extends Mamifero{ 
 public String mamar() { return “com 
mamadeira”;} 
} 
Public classe Ambiente{ 
 public static void main(String a[]){ 
 Mamifero h = new Homem(); 
 System.out.println(h.mamar()); 
 } 
} 
a) com mamadeira 
b) sem mamadeira 
c) Não imprime nada 
d) Erro de compilação pois não é possível sobrescrever o 
método mamar em Homem. 
e) Erro de compilação pois não é possível atribuir a variável h 
que é do tipo Mamifero um objeto do tipo Homem. 
12) O código abaixo compila e executa. Examine o código 
abaixo e responda: 
 public class G1 { 
 private static int n = 0; 
Universidade do Oeste de Santa Catarina - UNOESC 
Disciplina: Prog. Orientada a Objetos 
Professor: Ricardo Antonello 
 public static void main(String e[]) { 
 G1 n1 = new G1(1); 
 G1 n2 = new G1(2); 
 G1 n3 = new G1(3); 
 System.out.print(n); 
 } 
 public G1(int n){ 
 n++; 
 } 
 } 
a) Imprime 0 
b) Imprime 1 
c) Imprime 2 
d) Imprime 3 
e) Imprime 4 
f) Imprime null 
13) O código abaixo compila e executa sem erros. Analise e 
responda a alternativa correta para a saída em tela. 
public class Cliente { 
 private String nome; 
 private int idade; 
 public static void main(String e[]) { 
 Cliente c1 = new Cliente("Pelé", 1); 
 Cliente c2 = new Cliente("Maradona", 2); 
 Cliente c3 = new Cliente("Ronaldinho", 3); 
 c1 = c2; 
 c2 = c3; 
 c2.setNome("Robinho"); 
 System.out.print(c3.getNome()+ " e " + c1.getNome()); 
 } 
 public Cliente(String n, int i) { 
 this.nome = n; 
 this.idade = i; 
 } 
 public void setNome(String n) { 
 this.nome = n; 
 } 
 public String getNome() { 
 return this.nome; 
 } 
} 
a) Maradona e Pele 
b) Ronaldinho e Maradona 
c) Ronaldinho e Pele 
d) Robinho e Maradona 
e) Nenhuma das alternativas 
14) Qual código inserido na linha 7 cria uma estancia de 
Bar? 
�� ���������������
�� �������������	
�����
�� ������
� 
���������������
�� �������������	�	���
�����	�����
�������
	
�������
�� ������������������
������������
 � ���������!!����
��"�#��$�
����
%� %���������
&� &�������
a) Foo.Bar b = new Foo.Bar(); 
b) Foo.Bar b = f.new Bar(); 
c) Bar b = new f.Bar(); 
d) Bar d = f.new Bar(); 
e) Foo.Bar b = new f.Bar(); 
O polimorfismo é caracterizado quando duas ou mais 
classes distintas tem métodos de mesmo nome, de forma 
que uma função possa utilizar um objeto de qualquer uma 
das classes polimórficas, sem necessidade de tratar de 
forma diferenciada conforme a classe do objeto. 
Sobrescrita: Utilizada para definir o comportamento de 
um método de mesmo nome já definido na superclasse.
Sobrecarga: Utiliza o nome do método já definido na 
classe ou superclasse. 
Dependencia: usa-um 
Agregação: tem-um. 
Herança: é-um. 
Agregação: método chamado por new. 
O metodo toString é herdado por todos os objetos da classe 
Object. 
As Linguagens orientadas a objetos utilizam o conceito de 
mensagen para efetuar a comunicaçao. 
O conceito de herança possibilita a especializacao de 
comportamentos pre-existentes em classes ancestrais. 
É possivel implementar varias interfaces emu ma mesma classe, 
contudo, caso algum metodo seja definido como abstrato sera 
necessario tambem definer a classe como abstrata. 
@One to Many cria uma Terceira tabela para gerenciar o 
relacionamento caso nao seja utilizada a anotaçao mappedBy 
Persistence.xml é um arquivo contend informacoes de 
cnfiguracao do banco de do projeto. Ele contem,por exemplo, a 
senha e o login do banco de dados o nome do banco d dados, 
etc.

Outros materiais