🎯 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

Q4248424 Programação

Com relação à arquitetura de software, à interoperabilidade de sistemas e a tecnologias associadas, julgue o item subsequente.


Em programação orientada a objetos, um objeto define as características e os comportamentos de um conjunto de classes.

Alternativas
Q4248411 Programação

A respeito dos conceitos fundamentais da orientação a objetos, da linguagem C# e de API (application programming interface), julgue o item subsequente.


No trecho de código C# a seguir, a classe Employee declara o método Payment(), a classe OutsourcedEmployee o sobrescreve com override, e, como a variável é do tipo Employee, mas referencia um objeto do tipo OutsourcedEmployee, a chamada e.Payment() executa o método redefinido na subclasse. 


Imagem associada para resolução da questão

Alternativas
Q4245027 Programação
Na programação orientada a objetos, qual mecanismo permite que uma subclasse forneça uma implementação específica para um método que já é definido em sua superclasse? 
Alternativas
Q4234261 Programação

Considerando os conceitos fundamentais de arquitetura e linguagem orientadas a objetos, bem como o desenvolvimento e a integração via interfaces de programação de aplicações (API), julgue o item subsequente.


Na arquitetura orientada a objetos, o encapsulamento é o princípio que visa ocultar os detalhes de implementação interna e proteger o estado de um objeto, restringindo o acesso direto aos seus atributos e mediando a interação do meio externo por meio de métodos públicos definidos.

Alternativas
Q4232594 Programação
Na orientação a objetos, qual é o caso apresentado por uma classe que possui métodos com os mesmos nomes, mas com assinaturas diferentes (tipos ou quantidade de parâmetros distintos)? 
Alternativas
Q4229293 Programação

Analise as afirmativas a seguir sobre conceitos importantes em Java e considere V (verdadeira) ou F (falsa):


Imagem associada para resolução da questão

Imagem associada para resolução da questão


Assinale a alternativa correta:

Alternativas
Q4224659 Programação
Analise o código Java: 

Q41.png (557×201)

Sobre o polimorfismo e o código acima, avalie as afirmações a seguir:
I - O polimorfismo permite que o método chamado seja determinado em tempo de execução (late binding).
II - A saída do programa será “Veículo movendo”, pois o tipo da variável v é Veículo.
III - No polimorfismo subclasses de uma classe podem definir seus próprios comportamentos únicos, compartilhando, ainda assim, algumas das funcionalidades da classe original.

Das afirmações acima, quais estão corretas? 
Alternativas
Q4223941 Programação
Durante o desenvolvimento de um sistema interno para a UNIRIO, o técnico de tecnologia da informação precisa criar um módulo que calcule diferentes tipos de médias utilizadas em relatórios acadêmicos. No entanto, ele deseja utilizar o mesmo nome de método para realizar cálculos distintos, variando apenas a quantidade ou o tipo dos parâmetros recebidos (por exemplo, calcular média de dois valores, de três valores ou de uma lista). Essa abordagem facilita a legibilidade do código e torna a interface do módulo mais intuitiva. Considerando o conceito descrito, qual tipo de polimorfismo está sendo aplicado?
Alternativas
Q4223147 Programação
Uma equipe de desenvolvimento de sistemas de uma autarquia federal está modelando o módulo de concessão de licenças ambientais utilizando Domain-Driven Design (DDD).
O domínio possui as classes

ProcessoLicenciamento, ParecerTecnico, Vistoria e DocumentoObrigatorio.

O arquiteto definiu que a classe ProcessoLicenciamento atuará como Aggregate Root. Durante uma revisão de código, constatou-se que um desenvolvedor criou um repositório exclusivo para a classe Vistoria, permitindo que sistemas externos alterem o status de uma vistoria diretamente no banco de dados, sem passar pelas regras de validação contidas em ProcessoLicenciamento.


À luz dos padrões táticos do DDD, a abordagem do desenvolvedor está incorreta porque viola o seguinte princípio: 
Alternativas
Q4222418 Programação
No desenvolvimento do módulo de cálculo de autonomia de combustível do sistema de navegação aérea, um programador criou uma classe abstrata Aeronave com um método calcularAutonomia(). Duas subclasses, AviaoComercial e Helicoptero, herdam de Aeronave e implementam o método de maneiras totalmente distintas.
A orientação a objetos baseia-se em pilares fundamentais para promover flexibilidade e reutilização de código.
O conceito que permite a referências do tipo genérico Aeronave invocar comportamentos específicos diferentes, dependendo do tipo do objeto real apontado em tempo de execução, é
Alternativas
Q4217838 Programação
O Zend Framework é um framework PHP orientado a objetos que segue o padrão de arquitetura MVC (Model-View-Controller) e adota princípios como baixo acoplamento, reusabilidade e convenção sobre configuração.
A partir de 2019, o projeto migrou para a comunidade open source sob o nome Laminas Project, mantendo a mesma arquitetura e os mesmos conceitos fundamentais. Entre seus principais componentes estão o sistema de módulos, o Service Manager (gerenciador de serviços baseado em injeção de dependências), o Event Manager e o sistema de rotas.
Considere o seguinte trecho de código representando um controller em uma aplicação baseada no Zend Framework (ZF2/ZF3): 

<?php
namespace Application\Controller;
use Zend\Mvc\Controller\AbstractActionController; use Zend\View\Model\ViewModel;
class ProdutoController extends AbstractActionController {  private $produtoService;  public function __construct(ProdutoService $produtoService)  {  $this->produtoService = $produtoService;  }  public function listarAction()  {  $produtos = $this->produtoService->buscarTodos();  return new ViewModel([  'produtos' => $produtos,  ]);  } }



Considerando a arquitetura e os conceitos do Zend Framework (versões 2 e 3), e o funcionamento do framework, assinale a afirmativa correta. 
Alternativas
Q4206175 Programação

Uma software house mantém um sistema de desenho técnico. A equipe perce beu que, sempre que surge um novo tipo de figura, como triângulo ou losango, várias partes do código precisam ser alteradas, especialmente rotinas que usam if/else ou switch para verificar o tipo da figura antes de desenhá-la.



Com base nos princípios OCP e LSP, assinale a afirmativa INCORRETA

Alternativas
Q4193532 Programação
Analise o código JavaScript e assinale a alternativa que descreve corretamente a saída exibida no console para os valores de “q.r” e “q.theta” após sua execução. 


Imagem associada para resolução da questão
Alternativas
Q4193140 Programação
No projeto de sistemas orientados a objetos, a hierarquia de classes permite a reutilização de código e a padronização de comportamentos. Acerca das diferenças e aplicações de classes concretas e abstratas, registre V, para as afirmativas verdadeiras, e F, para as falsas:

(__)Uma classe abstrata serve como modelo para outras classes e não permite que instâncias (objetos) sejam criadas diretamente a partir dela.
(__)Classes concretas são aquelas que implementam todos os métodos definidos em sua hierarquia, permitindo a criação de objetos operacionais.
(__)Uma classe abstrata pode conter métodos concretos, com implementação definida, além de assinaturas de métodos abstratos sem corpo.
(__)Toda classe abstrata deve possuir pelo menos dez métodos abstratos para ser considerada válida pelo compilador da linguagem.

Após análise, assinale a alternativa que apresenta a sequência correta dos itens acima, de cima para baixo:
Alternativas
Q4193137 Programação
A Programação Orientada a Objetos (POO) utiliza conceitos do mundo real para estruturar o desenvolvimento de sistemas complexos. No que se refere aos pilares básicos deste paradigma de programação, assinale a alternativa CORRETA.
Alternativas
Q4186132 Programação
Dado o código abaixo:
static int soma(int x, int y) {  return x + y; } static double soma(double x, double y) {  return x + y; } public static void main(String[] args) {  int meuNum1 = soma(8, 5);  double meuNum2 = soma(4.3, 6.26);
Sobre o código acima exposto, temos um exemplo claro de qual ocorrência em relação ao método soma?
Alternativas
Q4186041 Programação
Sobre Programação Orientada a Objetos (POO), informe verdadeiro (V) ou falso (F) para as assertivas abaixo e, em seguida, marque a opção que apresenta a sequência correta.

( ) Encapsulamento significa que os detalhes de implementação de uma classe ficam ocultos, de modo que outros objetos interajam com ela somente por meio de seus métodos públicos.
( ) Uma nova classe de objetos pode ser criada convenientemente por meio de herança — ela (subclasse) começa com as características de uma classe existente (superclasse), possivelmente personalizando-as e adicionando aspectos próprios.
( ) Polimorfismo permite que uma variável de tipo de superclasse referencie objetos de subclasses diferentes e invoque métodos que se comportam de maneira distinta conforme o tipo real do objeto.
( ) Reutilização de classes significa empregar a mesma definição de classe para criar múltiplas instâncias e também utilizá-la como base para novas estruturas por meio de herança ou composição, evitando duplicação de código. 
Alternativas
Q4181861 Programação
Em uma aplicação corporativa desenvolvida em Java e C#, a equipe de arquitetura revisou um módulo responsável por calcular diferentes políticas de cobrança. A versão inicial concentrava regras condicionais em uma única classe, com testes frequentes sobre o tipo concreto de cliente, produto e contrato. A proposta de refatoração envolveu uso de interfaces, classes especializadas, injeção de dependências e substituição de estruturas condicionais extensas por chamadas polimórficas. Acerca do tema, analise as sentenças a seguir:

I- O polimorfismo permite que objetos de classes diferentes sejam tratados por uma mesma abstração, de modo que a seleção do comportamento concreto possa ocorrer em tempo de execução, desde que os tipos envolvidos respeitem o contrato definido por uma interface, classe abstrata ou hierarquia compatível.

II- A herança deve ser utilizada sempre que duas classes compartilham atributos com nomes semelhantes, pois a reutilização estrutural é critério suficiente para estabelecer relação “é-um”, mesmo que os comportamentos esperados das subclasses violem substitutibilidade em relação à superclasse.

III- A redução de condicionais baseadas em tipo concreto pode aumentar a extensibilidade do módulo quando novas políticas de cobrança são adicionadas por meio de novas implementações de uma abstração, sem exigir alteração direta da lógica cliente que consome o contrato comum.

IV- O encapsulamento consiste em tornar todos os atributos privados e todos os métodos públicos, garantindo baixo acoplamento automaticamente, independentemente da exposição de detalhes internos por métodos de acesso e da estabilidade da interface pública da classe.

Analisadas as sentenças, estão CORRETAS apenas:
Alternativas
Q4181257 Programação
As linguagens de programação são classificadas segundo diferentes critérios, como nível de abstração, paradigma e tipo de execução. Essa classificação orienta decisões importantes no desenvolvimento de sistemas, como a escolha da linguagem mais adequada para um projeto, a compatibilidade com o ambiente de produção e o perfil das equipes de desenvolvimento. Dominar esses conceitos é fundamental para avaliar soluções e dar suporte a aplicações institucionais. Com base nessa classificação, assinale a alternativa CORRETA.
Alternativas
Q4177267 Programação
Em um projeto desenvolvido com linguagem orientada a objetos, a organização do código envolve a definição de classes, a criação de objetos e o uso de mecanismos como herança, polimorfismo e sobrecarga de métodos. Deste modo, analise as assertivas:
I. Uma classe pode ser entendida como um modelo que define atributos e métodos, enquanto um objeto corresponde a uma instância criada a partir dessa classe.
II. A herança permite que uma classe aproveite atributos e métodos de outra, favorecendo a reutilização de código e a organização em hierarquias.
III. A sobrecarga de métodos ocorre quando métodos possuem o mesmo nome e a mesma lista de parâmetros, diferenciando se pelo conteúdo executado internamente.
Está(ão) correta(s): 
Alternativas
Respostas
1: E
2: E
3: A
4: C
5: D
6: A
7: D
8: E
9: B
10: B
11: A
12: D
13: A
14: C
15: C
16: B
17: A
18: B
19: A
20: A