Qual das seguintes opções **NÃO** é uma característica da programação orientada a objetos?

(A) - 
 Encapsulamento
(B) - 
 Herança
(C) - 
 Polimorfismo
(D) - 
 Passagem por valor
(E) - 
 Abstração

Explicação

Passagem por valor é uma característica da programação procedural, não da programação orientada a objetos. Na passagem por valor, uma cópia do valor é passada para o parâmetro de uma função, enquanto que na passagem por referência, o próprio valor é passado.

Análise das alternativas

  • (A) Encapsulamento: É uma característica da programação orientada a objetos que agrupa dados e métodos relacionados em uma única unidade.
  • (B) Herança: É uma característica da programação orientada a objetos que permite que classes derivadas herdem propriedades e métodos de classes base.
  • (C) Polimorfismo: É uma característica da programação orientada a objetos que permite que objetos de diferentes classes respondam ao mesmo método de forma diferente.
  • (D) Passagem por valor: É uma característica da programação procedural, não da programação orientada a objetos.
  • (E) Abstração: É uma característica da programação orientada a objetos que oculta os detalhes de implementação e expõe apenas a interface necessária.

Conclusão

As características fundamentais da programação orientada a objetos incluem encapsulamento, herança, polimorfismo e abstração. A passagem por valor, por outro lado, é uma técnica utilizada na programação procedural.