Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
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.