🎯 Saiba o que estudar

Avançado com Treinador a partir de R$ 0,76/dia

Questões de Concurso Sobre programação orientada a objetos em programação

Questões Discursivas

Foram encontradas 955 questões

Q4029410 Programação
Analise o seguinte programa escrito em linguagem Java, conforme a especificação Java SE 11. Sobre o fluxo de execução com try-catch-finally e relançamento de exceções, assinale a alternativa que apresenta a saída produzida. Considere que o método main captura a exceção relançada, e que o bloco finally sempre é executado antes da propagação da exceção, conforme a Seção 11.3 da Java Language Specification.
Imagem associada para resolução da questão

Alternativas
Q4027569 Programação
Em linguagens orientadas a objetos com suporte a despacho dinâmico, o polimorfismo pode se manifestar como sobrecarga (overloading) ou sobrescrita (overriding), mecanismos com semânticas e momentos de resolução distintos. Nesse sentido, assinale a alternativa correta.
Alternativas
Q4027558 Programação
 Considere uma linguagem orientada a objetos com despacho dinâmico para métodos sobrescritos. Uma empresa de RH desenvolve um sistema de folha de pagamento que modela funcionários por meio de uma classe base `Funcionario`, da qual derivam `FuncionarioCLT` e `FuncionarioPJ`, cada uma sobrepondo (overriding) o método `calcularSalario()` com regras de cálculo distintas. Um módulo de relatórios recebe uma lista do tipo `Funcionario` e invoca `calcularSalario()` em cada elemento sem conhecer o tipo concreto de cada objeto. Quando a empresa contrata um novo tipo de vínculo e cria a classe `FuncionarioSocio` — também derivando de `Funcionario` e sobrepondo `calcularSalario()` — o módulo de relatórios não precisa de nenhuma alteração. Nesse contexto, assinale a alternativa que identifica corretamente os mecanismos de orientação a objetos que tornam esse comportamento possível e explica por que o módulo não precisa ser modificado.
Alternativas
Q4025216 Programação
Durante o desenvolvimento de um pequeno sistema interno para controle de chamados técnicos em um setor de tecnologia, um programador decidiu utilizar conceitos de Programação Orientada a Objetos (POO). No projeto inicial foram criadas classes que representam equipamentos de informática, técnicos responsáveis pelo atendimento e registros de manutenção. A estrutura do programa passou a incluir atributos para armazenar informações e métodos responsáveis por executar determinadas ações, além de relacionamentos entre classes que permitissem reaproveitamento de código. Considerando os conceitos de Programação Orientada a Objetos, analise as assertivas a seguir e assinale V, para as verdadeiras, e F, para as falsas:

(__)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):
Alternativas
Q4013958 Programação
O polimorfismo é um dos pilares da Programação Orientada a Objetos (POO) e está diretamente relacionado aos conceitos de herança e sobrescrita de métodos. Analise as afirmativas a seguir:
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:
Alternativas
Q4013957 Programação
Considere os conceitos fundamentais da Programação Orientada a Objetos (POO) e analise as afirmações a seguir, relacionadas a herança, polimorfismo, sobrescrita de métodos, encapsulamento e ligação dinâmica:
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:
Alternativas
Q4013956 Programação

Considere o seguinte código em Java:


                                                                               Imagem associada para resolução da questão



Com base nos princípios da Programação Orientada a Objetos e no mecanismo de herança, analise as afirmativas a seguir:


I. A classe Cachorro herda o atributo nome da classe Animal e pode acessá-lo diretamente por ele ter sido declarado como protected.


II. A anotação @Override garante, em tempo de compilação, que o método emitirSom() da subclasse esteja sobrescrevendo corretamente um método da superclasse.


III. Caso o construtor da classe Cachorro não chamasse explicitamente super(nome), o código ainda compilariam normalmente, pois o construtor da superclasse é automaticamente herdado.


IV. A classe Cachorro especializa o comportamento da superclasse ao redefinir o método emitirSom(), caracterizando polimorfismo por sobrescrita.


Assinale a alternativa CORRETA:

Alternativas
Q4013950 Programação
Em um sistema orientado a objetos, um método é chamado por meio de uma referência do tipo da superclasse, mas o objeto referenciado pertence a uma subclasse que redefine esse método. 
Nesse cenário, a escolha da implementação do método ocorre:
Alternativas
Q3999820 Programação
Considerando os relacionamentos entre classes e os fundamentos de programação orientada a objetos, assinale a alternativa que apresenta uma relação de composição. 
Alternativas
Q3976385 Programação

Um programador escreveu o seguinte programa em Java:


Imagem associada para resolução da questão


Na execução, ocorreu um erro indicando a não-visibilidade do atributo: 

Alternativas
Q3963906 Programação
Durante o desenvolvimento de um sistema acadêmico institucional, a equipe de software definiu uma classe Aluno, responsável por representar estudantes regularmente matriculados. Nessa classe, atributos como nome, matricula e situacaoAcademica foram declarados como privados, enquanto métodos públicos foram criados para consultar e alterar esses valores, aplicando validações antes de qualquer modificação no estado do objeto. Essa decisão visou reduzir inconsistências, evitar acessos indevidos e facilitar a manutenção do sistema ao longo do tempo. Com base no contexto apresentado, analise as assertivas correlatas e a relação proposta entre elas.

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.
Alternativas
Q3963905 Programação
Determinada equipe de desenvolvimento está criando um sistema de gestão hospitalar em Java. No projeto, foi definida uma classe abstrata ProfissionalSaude, contendo o método calcularRemuneracao(). Classes específicas como Medico, Enfermeiro e Fisioterapeuta herdam dessa classe e implementam esse método de formas distintas, considerando critérios próprios de cada especialidade. Em tempo de execução, o sistema deve calcular corretamente a remuneração, independentemente do tipo específico do profissional tratado. Considerando o cenário hipotético e os conceitos fundamentais da linguagem Java, assinale a afirmativa correta. 
Alternativas
Ano: 2026 Banca: IV - UFG Órgão: UFSCAR Prova: IV - UFG - 2026 - UFSCAR - Analista de TI |
Q3960594 Programação

O uso da palavra-chave “sealed” na declaração de uma classe ou interface em Java significa que

Alternativas
Ano: 2026 Banca: IV - UFG Órgão: UFSCAR Prova: IV - UFG - 2026 - UFSCAR - Analista de TI |
Q3960591 Programação

Em programação orientada a objetos, o uso do conceito de polimorfismo implica que 

Alternativas
Q3953512 Programação
O Polimorfismo Paramétrico em Java, implementado via Generics, utiliza o mecanismo de Type Erasure para manter a compatibilidade com versões legadas da JVM. Esse mecanismo impõe restrições à variância dos tipos. Para lidar com isso, a linguagem utiliza coringas (wildcards) com limites superiores (extends) e inferiores (super). Para a questão, considere o método apresentado:

1.png (544×68)
Com base nas regras de covariância e contravariância, assinale a alternativa que apresenta uma operação tecnicamente válida, assumindo que a classe Cachorro herda explicitamente da classe Animal. 
Alternativas
Q3953507 Programação

Sobre o uso de polimorfismo, considere o trecho de código Java, que contém uma lacuna identificada por “<?>”:


45.jpg (333×388)


Para que o programa imprima exatamente “Ana:Aluno | Bruno:Professor”, qual das alternativas apresenta a melhor expressão para substituir a lacuna <?> ? 



Alternativas
Q3953499 Programação
Em Programação Orientada a Objetos, o encapsulamento protege o estado interno de um objeto e define como ele pode ser acessado/modificado. Já a herança permite criar classes derivadas a partir de classes base, promovendo reuso e especialização. Dentro desse assunto, considere o trecho de código em Python, usado para modelar pessoas de uma escola.
37.jpg (324×170)
Assinale a alternativa correta sobre o acesso ao atributo “__nome” e a herança entre as classes. 
Alternativas
Q3927260 Programação
Um programador de sistemas de informação escreveu o seguinte programa em Java 11:

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:
Alternativas
Q3927257 Programação
Um usuário de uma linguagem de programação orientada a objeto (OO) precisa definir um componente que representa a instância de uma classe, com suas propriedades e comportamento. Esse componente é o:
Alternativas
Q3922994 Programação

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. 

Alternativas
Respostas
61: A
62: B
63: B
64: C
65: C
66: A
67: A
68: C
69: D
70: A
71: D
72: D
73: C
74: D
75: E
76: B
77: E
78: E
79: A
80: A