Baixe o app para aproveitar ainda mais
Prévia do material em texto
1/7 Prova Impressa GABARITO | Avaliação Final (Objetiva) - Individual (Cod.:746064) Dentro da Orientação a Objetos, o conceito de classe e objeto é fundamental, sendo indispensável sua compreensão para que possamos fazer programas consistentes usando este tipo de tecnologia. Sobre as as alternativas que referem-se a classes, assinale a alternativa INCORRETA: A Arroz tio joão. B Produto. C Fornecedor. D Cliente. O conceito de classes abstrata, através de suas características especiais, fornece ao conceito de herança uma maior confiabilidade uma vez que as classes modeladas com herança precisam ser melhor idealizadas e projetadas. Dessa forma, avalie o código-fonte da classe Atleta: package fontes; public class Atleta{ private int pais; private String modalidade; private boolean medalistaOlimpico; public abstract void competir(String modalidade) { System.out.println("É especialista em " + modalidade); } public void competirPor(int pais){ System.out.println("O atleta compete por " + pais); } } I- A classe em questão apresenta problemas de sintaxe. II- O método competirPor(int pais) não está gerando erro de sintaxe e usa corretamente a palavra- chave void. III- O método competirPor(int pais) gera erros de sintaxe, e necessita da palavra-chave abstract antes da palavra-chave void. IV- O método "competir(String modalidade)" não gera erro de sintaxe. VOLTAR 1 2 2/7 Assinale a alternativa CORRETA: A As sentenças I e III estão corretas. B As sentenças III e IV estão corretas. C As sentenças II e IV estão corretas. D As sentenças I e II estão corretas. A sobrecarga de métodos, considerada um tipo de polimorfismo, é um mecanismo que permite que dois ou mais métodos compartilhem o mesmo nome, contanto que tenham diferentes conjuntos de parâmetros. Dessa forma, com o código-fonte apresentado, referente à classe Bicicleta, e a correta sintaxe aplicada ao polimorfismo de sobrecarga para os dois métodos construtores da referida classe, classifique V para as sentenças verdadeiras e F para as falsas: public class Bicicleta{ private char tamanhoQuadro; private int numeroMarchas; private char tamanhoRoda; public void movimentar(){ System.out.println("O objeto bike está em movimento!!"); } } ( ) public Bicicleta(char tamanhoQuadro, int numeroMarchas, char tamanhoRoda){ this.tamanhoQuadro = tamanhoQuadro; this.numeroMarchas = numeroMarchas; this.tamanhoRoda = tamanhoRoda; } public Bicicleta(char tQuadro, int nMarchas){ this.tamanhoQuadro = tQuadro; this.numeroMarchas = nMarchas; } ( ) public Bicicleta(int numeroMarchas, char tamanhoRoda, char tamanhoQuadro){ this.numeroMarchas = numeroMarchas; this.tamanhoQuadro = tamanhoQuadro; this.tamanhoRoda = tamanhoRoda; } public Bicicleta(char roda){ this.tamanhoRoda = roda; } ( ) public Bicicleta(char tamanhoQuadro, int numeroMarchas, char tamanhoRoda){ this.tamanhoQuadro = tamanhoQuadro; 3 3/7 this.tamanhoRoda = tamanhoRoda; } public Bicicleta(char tamanhoQuadro, int numeroMarchas){ this.tamanhoQuadro = tamanhoQuadro; this.numeroMarchas = numeroMarchas; this.tamanhoRoda = tamanhoRoda; } ( ) public Bicicleta(){ this.numeroMarchas = numeroMarchas; } public Bicicleta(char tamanhoQuadro, int numeroMarchas, char tamanhoRoda){ } Assinale a alternativa que apresenta a sequência CORRETA: A V - F - F - V. B V - V - F - F. C F - V - V - F. D F - V - F - V. O framework Collections da plataforma Java possui um conjunto de interfaces e implementações que permitem, entre outras funcionalidades, determinar a ordenação de um grupo de objetos com base em suas características. Acerca da ordenação de objetos, analise as afirmativas a seguir: I- Para ordenar objetos de uma mesma classe, deve-se garantir que tal classe implemente a interface Comparable ou utilize um provider. II- A implementação do método "compareTo" varia conforme o contexto/critério em que a ordenação é aplicada. III- No Java, só é possível ordenar classes Wrappers. IV- Para ordenarmos uma coleção de objetos, podemos utilizar método estático "sort" da classe "ArrayList" Agora, assinale a alternativa CORRETA: A Somente a sentença III está correta. B As sentenças I e II estão corretas. C Somente a sentença IV está correta. D As sentenças I, II e IV estão corretas. 4 4/7 A proteção de atributos e operações das classes faz com que estas se comuniquem com o meio externo por meio de suas interfaces. Que conceito é esse? A Encapsulamento. B Herança. C Polimorfismo. D Agregação. Grande parte das aplicações existentes no mercado dependem dos bancos de dados relacionais para o armazenamento e a recuperação de informações. Com vistas a isso, a plataforma Java traz uma api conhecida como Java Database Connectivity (JDBC), que permite a conexão com os bancos de dados mais utilizados. Com relação à JDBC da plataforma Java, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Para conseguir compatibilidade, a arquitetura do JDBC foi feita de forma desacoplada, baseando-se em drivers, fornecidos pelos fornecedores de bancos de dados. ( ) O JDBC endereça automaticamente a questão do mapeamento objeto relacional. ( ) Os drivers JDBC do tipo nativo são implementados na linguagem de programação utilizada para implementar o banco de dados com o qual se quer estabelecer conexão. ( ) Para utilizar um driver JDBC do tipo nativo desenvolvido por terceiros, basta adicioná-lo à biblioteca do projeto através da inclusão de seu .jar. Agora, assinale a alternativa que apresenta a sequência CORRETA: A V - V - F - F. B V - F - V - F. C V - F - F - V. D F - F - V - F. A estrutura de uma classe na linguagem de programação Java comporta um nome, um conjunto de atributos, também conhecidos como o estado desta classe e um conjunto de métodos, também conhecidos como o comportamento desta classe. Considerando a estrutura da Classe Principal demonstrada na figura a seguir, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Pode-se afirmar que o tipo de dados do atributo "matricula", existente na classe aluno é do tipo numérico. ( ) O método chamado main é quem torna uma classe executável, sendo que a sua existência em uma classe é opcional. ( ) A linha 5 marca o que é conhecido como o ponto de entrada da aplicação. ( ) Já que o método "Aluno()" não possui parâmetros as linhas 7 a 9 geram erros de compilação. 5 6 7 5/7 Assinale a alternativa que apresenta a sequência CORRETA: A V - F - V - F. B F - V - V - V. C V - V - V - F. D V - F - F - V. Todas as classes em Java herdam implicitamente a classe Object e, dessa forma, herdam também métodos. Dentre os métodos herdados podemos destacar o "equals()" e o "hashCode()", ambos utilizados pelo Framework de coleções da linguagem de programação Java. Acerca desses dois métodos, classifique V para as sentenças verdadeiras e F para as falsas: ( ) O operador "==" é uma maneira simplificada de se chamar o método "equals()". ( ) Ao escrevermos uma classe, devemos utilizar a anotação @Replace para sobrescrever os métodos "equals()" e "hashCode()". ( ) Coleções que utilizam tabelas de dispersão (também conhecidas por tabelas hash) para armazenamento fazem uso direto do método "hashCode()". ( ) O método "equals()" é utilizado pelas coleções que não permitem repetições para determinar a igualdade entre objetos. Agora, assinale a alternativa que apresenta a sequência CORRETA: A V - V - V - F. B F - F - V - V. C F - V - V - F. D F - F - F - V. O conceito de sobrecarga permite que você utilize o mesmo nome de método para muitos métodos diferentes, cada um com um número e tipos de parâmetros distintos. A sobrecarga é útil quando um método não é definido por seus argumentos e sim um conceito independente dos parâmetros. Sobre o conceito de sobrecarga, analise as sentenças a seguir: I – É considerado um tipopolimorfismo. II – Para que a sobrecarga aconteça, basta que se diferencie o número de parâmetros ou o tipo de parâmetros. III – É considerado um tipo de Abstração. IV – É considerado um tipo de Herança. É 8 9 6/7 V – É considerado um tipo de encapsulamento. Assinale a alternativa CORRETA: A As sentençasa I e III estão corretas. B As sentenças I e II estão corretas. C As sentenças I, III e IV estão corretas. D As sentenças II e V estão corretas. O padrão de projeto Singleton aumenta a qualidade e a produtividade do desenvolvimento de software orientado a objetos, pois é capaz de solucionar problemas rotineiros que normalmente ocorrem durante as etapas do desenvolvimento de um software. Esse padrão descreve uma implementação na qual uma classe é instanciada uma única vez durante a execução de uma aplicação. Referente aos códigos-fonte que implementam um exemplo da aplicação Singleton e sua execução para a classe Memoria, classifique V para as sentenças verdadeiras e F para as falsas: (1)public class Memoria{ (2) private static Memoria memoryInstance; (3) private double quantidadeMemoria; (4) (5) private Memoria(){} (6) (7) (8) public static Memoria getInstance() { (9) if(memoryInstance == null) { (10) memoryInstance = new Memoria(); (11) } (12) return memoryInstance; (13) } (14) (15) public double getQuantidadeMemoria() { (16) return this.quantidadeMemoria; (17) } (18) (19) public void setQuantidadeMemoria (float quantidadeMemoria) { (20) this.quantidadeMemoria = quantidadeMemoria; (21) } (22)} (1) public static void main(String[] args){ (2) (3) Memoria memoria1, memoria2, memoria3; (4) (5) memoria1 = Memoria.getInstance(); (6) memoria2 = Memoria.getInstance(); (7) memoria3 = new Memoria(); (8) (9) System.out.println(memoria1); (10) System.out.println(memoria2); (11) System.out.println(memoria3); (12) } 10 7/7 ( ) As linhas 3 a 6, do código-fonte de execução da classe Memoria, precisam estar implementados na mesma linha para que o método getInstance() crie, e retorne, o objeto único da classe Memoria. ( ) As linhas 9 e 10, do código-fonte de execução da classe Memoria, mostram o mesmo valor, enquanto o código da linha 11 imprime um valor diferente. ( ) A linha 7, do código-fonte de execução da classe Memoria, gera um erro uma vez que o padrão Singleton não permite o acesso direto ao método construtor das classes que o utilizam. ( ) A linha 9, do código-fonte da classe Memoria, verifica a existência de um objeto do mesmo tipo da classe em questão, para garantir que um único objeto desse tipo exista na aplicação. Assinale a alternativa que apresenta a sequência CORRETA: A V - V - F - F. B V - F - F - V. C F - V - V - F. D F - F - V - V.
Compartilhar