Questões de Concurso
Comentadas sobre programação orientada a objetos em programação
Foram encontradas 706 questões
No contexto do desenvolvimento de um sistema orientado a objetos em Java, um Analista de Sistemas está projetando uma hierarquia de classes para representar diferentes formas de cálculo de benefícios em um sistema governamental. Durante a implementação, foi definido que:
• Existe um método na superclasse responsável por calcular um benefício.
• Esse método é redefinido nas subclasses, mantendo o mesmo nome, a mesma lista de parâmetros (assinatura) e o mesmo tipo de retorno (ou compatível/covariante).
• A escolha de qual implementação será executada ocorre em tempo de execução, de acordo com o tipo real do objeto.
Considerando os conceitos de polimorfismo na orientação a objetos, assinale a alternativa que representa CORRETAMENTE esse mecanismo.
(__)Classes podem ser entendidas como estruturas que organizam dados e comportamentos relacionados, servindo como modelo para a criação de objetos em um programa.
(__)Atributos correspondem às características ou propriedades associadas a uma classe ou objeto, enquanto métodos representam operações que podem manipular esses dados.
(__)Herança permite que uma classe utilize características definidas em outra classe, possibilitando reaproveitamento de código e organização hierárquica entre classes.
(__)Em muitos contextos de programação orientada a objetos, o polimorfismo permite que métodos com o mesmo nome apresentem comportamentos diferentes dependendo do objeto ou da classe envolvida.
(__)Na programação orientada a objetos, atributos são utilizados apenas para armazenar informações temporárias durante a execução de um método, não fazendo parte da estrutura de um objeto.
(__)Em projetos orientados a objetos, o uso de herança pode contribuir para reduzir repetição de código quando classes compartilham características semelhantes.
Assinale a alternativa que apresenta a sequência CORRETA de V (verdadeiro) e F (falso):
I. O polimorfismo permite que referências do tipo da superclasse apontem para objetos de suas subclasses.
II. O polimorfismo elimina a necessidade de herança em um sistema orientado a objetos.
III. Métodos sobrescritos em subclasses podem ser executados mesmo quando a referência do objeto é do tipo da superclasse.
Está CORRETO o que se afirma em:
I. Em um sistema orientado a objetos, quando um método é sobrescrito em uma subclasse, a versão do método executada é determinada em tempo de execução, de acordo com o tipo real do objeto referenciado.
II. O encapsulamento garante que os atributos de uma classe sejam sempre inacessíveis fora dela, independentemente da existência de métodos públicos de acesso.
III. Uma referência do tipo de uma superclasse pode apontar para um objeto de uma subclasse, possibilitando o uso do polimorfismo.
IV. Métodos declarados como privados (private) em uma superclasse podem ser sobrescritos por subclasses, desde que mantenham a mesma assinatura.
V. O uso de classes abstratas permite a definição de métodos sem implementação, os quais devem ser obrigatoriamente implementados pelas subclasses concretas.
Assinale a alternativa que apresenta a sequência CORRETA, de cima para baixo:
I. “A estratégia de restringir o acesso direto aos atributos da classe e permitir sua manipulação apenas por meio de métodos públicos está associada ao princípio do encapsulamento, que promove controle sobre o estado interno do objeto e reduz o acoplamento entre componentes do sistema.”
PORQUE
II. “O encapsulamento, na programação orientada a objetos, estabelece uma separação clara entre a interface exposta ao exterior e a implementação interna da classe, permitindo alterações internas sem impactar diretamente as demais partes do software.”
Assinale a alternativa correta.
O uso da palavra-chave “sealed” na declaração de uma classe ou interface em Java significa que
Em programação orientada a objetos, o uso do conceito de polimorfismo implica que
public class Figura { private double f; public Figura (double f) { this.f = f;} public Figura () { } public double calcf () { f = f * 3.1* 2.5; return f;} public static void main(String[] args) { Figura shape = new Figura (10.3); double g; g = shape.calcf (); System.out.println (g); } }
A execução desse programa apresenta um resultado igual a:
A programação orientada a objetos utiliza abstrações para organizar sistemas complexos, protegendo dados e facilitando a reutilização de código. Acerca do assunto, registre V, para as afirmativas verdadeiras, e F, para as falsas:
(__) O encapsulamento visa proteger o estado interno de um objeto, restringindo o acesso direto aos seus atributos por meio da exposição de interfaces públicas controladas.
(__) Polimorfismo é a capacidade de um objeto ser tratado como um tipo de sua superclasse, permitindo que métodos homônimos tenham comportamentos distintos nas subclasses.
(__) Herança múltipla de classes é um recurso disponível em todas as linguagens de programação orientadas a objetos, permitindo herdar estados de múltiplas classes base.
(__) O relacionamento do tipo composição define uma dependência forte entre objetos, na qual o ciclo de vida da parte está intrinsecamente ligado ao ciclo de vida do todo.
Assinale a alternativa que apresenta a sequência correta, de cima para baixo.
abstract class Documento { public abstract String getTipo();
public String descricao() { return "Documento do tipo: " + getTipo(); } }
class Relatorio extends Documento { @Override public String getTipo() { return "Relatório"; } }
public class Sistema { public static void main(String[] args) { Documento doc = new Relatorio(); System.out.println(doc.descricao()); } }
Sob a ótica de orientação a objetos em Java, assinale a alternativa correta a respeito do código apresentado.