Baixe o app para aproveitar ainda mais
Prévia do material em texto
Software orientado a objetos Professor(a): Márcio dos Santos (Especialização) 1) 2) 3) Prepare-se! Chegou a hora de você testar o conhecimento adquirido nesta disciplina. A Avaliação Virtual (AV) é composta por questões objetivas e corresponde a 100% da média final. Você tem até cinco tentativas para “Enviar” as questões, que são automaticamente corrigidas. Você pode responder as questões consultando o material de estudos, mas lembre-se de cumprir o prazo estabelecido. Boa prova! Os métodos, em POO, são estruturas amplamente utilizadas por programadores, assim como os atributos. Pode-se afirmar que o que diferencia esses elementos é: I - O fato dos atributos serem fragmentos de um algoritmo que podem receber um determinado valor, enquanto os métodos são funções que retornam um valor. II - A ação de cada um: métodos realizam ações sobre uma classe e atributos realizam ações sobre objetos. III - O significado dos atributos: variáveis que podem receber determinado valor, enquanto os métodos executam determinada ação. IV - O paradigma ao qual estão vinculados (estruturado, procedural ou orientado a objetos). V - A forma como cada um deles se comporta dentro de um objeto: os atributos (variáveis) precisam receber um valor; os métodos (variáveis globais), podem ou não receber valores. Considerando as opções, assinale a alternativa que contém as afirmativas corretas: Alternativas: Apenas II, III, V. Apenas III, IV. Apenas I, III, V. Apenas I, II, III. Apenas III. CORRETO Código da questão: 38324 Uma das características comuns entre o paradigma da programação procedural e programação orientada a objetos é: Alternativas: A classe, que está presente em ambos os paradigmas. A função, que se assemelha aos métodos. CORRETO Os objetos, que fazem parte de qualquer algoritmo em POO. A declaração de atributos, que em ambos paradigmas podem ou não receber valores. Os métodos, que, obrigatoriamente, retornam um valor. Código da questão: 38325 A notação @Override é necessária para informar, ao compilador, a intenção proposital de sobrepor um método declarado em alguma classe do programa. Considerando seus conhecimentos sobre assinatura de métodos e a afirmativa acima, analise as sentenças: I - O uso da notação @Override é desnecessária, caso a assinatura dos métodos envolvidos seja diferente. II - A assinatura dos métodos só é levada em consideração no caso de sobrecarga. III - A notação @Override resultará em erro de compilação, caso os métodos sobrepostos tenham assinaturas distintas. Está correto o que se afirma em: Resolução comentada: os atributos são os adjetivos de uma classe, o que a caracteriza. Já os métodos referem-se às ações que uma classe pode executar por meio de seus objetos. Resolução comentada: na programação procedural, as funções desempenham papel similar aos métodos, usados em POO, inclusive a estrutura de ambos elementos é bastante parecida. 4) 5) 6) Alternativas: I e III. CORRETO I e II. I; II e III. II e III. I apenas. Código da questão: 38371 Em Java, para que uma assinatura de método seja diferente de outra, considera-se _______________________ e seus respectivos _____________________________. Assinale a alternativa que preenche corretamente as lacunas acima: Alternativas: Seus sub métodos; tipos. O número de parâmetros; tipos. CORRETO O número de atributos; tipos. Seus retornos; valores. O número de atributos; valores. Código da questão: 38360 Sobre os algoritmos, assinale a alternativa que contém uma definição adequada: Alternativas: A programação estruturada, por demandar mais linhas de programação, reduz a complexidade de seus algoritmos, convertendo-os em pseudocódigos. Dentro da POO, um algoritmo é uma sequência de comandos lógicos, enquanto na programação procedural é uma sequência de dados. Um algoritmo é uma estrutura computacional atrelada diretamente à POO. Um algoritmo é uma sequência lógica de passos finitos para se resolver determinado problema. CORRETO Existem algoritmos para qualquer ação realizada dentro da programação orientada a objetos e procedural, mas não na programação estruturada. Código da questão: 38326 Considere o seguinte trecho de código: Resolução comentada: a assinatura dos métodos dita os padrões para a sobrecarga ou sobreposição. Resolução comentada: para que um polimorfismo seja aceito entre métodos iguais, considera-se o número de parâmetros e seus tipos de dados. Resolução comentada: todos os paradigmas de programação possuem algoritmos, que são uma sequência lógica e finita de comandos para se resolver determinado problema. 7) 8) Fonte: elaborado pelo autor. Para que cada método fosse corretamente alimentado com um dado, seria necessário enviar parâmetros, obedecendo as seguintes premissas: Alternativas: Um valor true/false e um valor inteiro entre 0 e 1 (binário). Um valor true ou false e um valor inteiro. CORRETO Um valor true e false ou um valor inteiro. Um valor true e false e um valor maior que zero. Um valor do tipo true/false e qualquer valor numérico. Código da questão: 38365 Analise o trecho de código a seguir: Funcionario func = new Funcionario(); É correto afirmar que, nesse contexto, existe: Alternativas: Uma classe chamada Funcionario e um objeto de mesmo nome, mas o segundo apto a receber parâmetros utilizando o método construtor. Uma classe chamada Funcionario e um objeto denominado func, que está sendo criado nesse instante. CORRETO Um objeto chamado Funcionario, que deriva de uma classe chamada func. Uma classe chamada func e um objeto chamado Funcionario, que receberá parâmetros entre seus parênteses. Duas classes chamadas Funcionario, porém apenas a segunda está apta a receber parâmetros. Código da questão: 38337 Aponte as definições mais adequadas, de acordo com a descrição apresentada: I - Por padrão, não são diretamente instanciadas. II - Podem ter classes abaixo de si, na hierarquia. III - Têm classes acima de si na hierarquia. Assinale a alternativa que atende, respectivamente, às afirmativas acima: Alternativas: Classes abstratas, Superclasses, Subclasses. CORRETO Subclasses, Classes-pai, Classes Abstratas. Subclasses, Classes abstratas, Classes-filha. Classes abstratas, Classes-pai, Superclasses. Classes-filha, Classes-pai, Superclasses. Resolução comentada: o primeiro método espera um valor booleana: ou true ou false. O segundo método espera um valor inteiro, seja ele maior ou menor que zero. Resolução comentada: a estrutura de instanciação de uma classe é: NomeDaClasse nomeDoObjeto = new NomeDaClasse();. 9) 10) Código da questão: 38334 Considere as seguintes asserções: I. Os métodos podem receber parâmetros vindos de algum algoritmo do programa, processando-os internamente e podendo, ou não, dar algum tipo de retorno. POIS II. Os dados vindos como parâmetros aos métodos são tratados, internamente, como variáveis. Assinale a alternativa correta: Alternativas: A segunda afirmativa está incorreta e a primeira está correta. A primeira afirmativa está correta e a segunda não é um complemento válido da primeira. Embora ambas afirmativas estejam corretas, não se complementam. Ambas afirmativas estão corretas e a segunda complementa a primeira. CORRETO A primeira afirmativa está incorreta, já a segunda está correta. Código da questão: 38330 Quanto aos atributos, pode-se afirmar que: I - Devem ser escritos sempre no infinitivo, por exemplo: comprar. II - Recebem nomes que podem ser considerados substantivos. III - Recebem nomes que podem ser considerados adjetivos. IV - Pertencem ao objeto e não diretamente à classe. V - Podem ser considerados como variáveis. Estão corretas as afirmativas: Alternativas: II; IV e V. IV e V. I; II e V. II; III e V. CORRETO II, III e IV. Código da questão: 38328 Resolução comentada: as classes abstratas, geralmente, servem de escopo a outras classes e não são diretamente instanciadas; as superclasses (ou classes-pai) recebem esse nome por terem classes abaixo de si na hierarquia;essas classes que estão abaixo são as subclasses ou classes-filha. Resolução comentada: os parâmetros recebidos por um método são tratados como variáveis para uso interno. Resolução comentada: os atributos podem ser tanto adjetivos quanto substantivos e pertencem à classe e não ao objeto, que apenas faz uso deles ao tornar-se uma instância de uma classe. Arquivos e Links
Compartilhar