Questão de Programação — C Sharp — Quadrix 2025
- Código
- qg596730
- Banca
- Quadrix
- Órgão
- CRC-SP
- Ano
- 2025
- Nível
- Superior
- Cargo
- Analista de Desenvolvimento
- CCerto
- EErrado
GabaritoC — Certo
Gabarito: C — CERTO. A linguagem C# é, por definição, uma linguagem orientada a objetos, e a afirmação está correta ao listar herança, polimorfismo e encapsulamento como recursos que ela suporta, facilitando o desenvolvimento modular e reutilizável. Essa característica é central na especificação da linguagem, que foi projetada para ser "simples, moderna, de propósito geral e orientada a objetos".
A orientação a objetos (POO) é um paradigma de programação que organiza o software em torno de "objetos", que são instâncias de "classes". Uma classe é um molde que define atributos (dados) e métodos (comportamentos). Os quatro pilares clássicos da POO são: abstração, encapsulamento, herança e polimorfismo. O C# implementa todos eles de forma nativa e robusta.
Encapsulamento é o mecanismo que esconde os detalhes internos de uma classe, expondo apenas o que é necessário através de uma interface pública. Em C#, isso é feito com modificadores de acesso como public, private e protected, além de propriedades (get/set). Isso protege os dados e permite que a implementação interna mude sem afetar quem usa a classe.
Herança permite que uma classe (subclasse) derive de outra (superclasse), herdando seus atributos e métodos. Isso promove a reutilização de código e a criação de hierarquias. Em C#, a herança é feita com o operador : (ex.: class Carro : Veiculo).
Polimorfismo é a capacidade de um objeto ser tratado de várias formas. Em C#, ele se manifesta de duas maneiras principais: por sobrecarga (vários métodos com o mesmo nome, mas assinaturas diferentes) e por sobrescrita (uma subclasse fornece uma implementação específica de um método já definido na superclasse, usando virtual e override).
A combinação desses recursos é o que permite o desenvolvimento modular e reutilizável: você cria classes bem definidas (encapsulamento), reutiliza código (herança) e escreve código flexível que trabalha com abstrações (polimorfismo).
A banca explora aqui um conhecimento fundamental e amplamente cobrado: a identificação dos pilares da POO e sua presença em uma linguagem específica. A pegadinha, se houvesse, seria afirmar que o C# não suporta algum desses recursos, o que seria falso.
A afirmação está correta. O C# é uma linguagem multiparadigma, mas seu paradigma principal é a orientação a objetos. Ela suporta herança (com class e :), polimorfismo (com virtual, override e sobrecarga) e encapsulamento (com modificadores de acesso e propriedades). Esses recursos, de fato, facilitam o desenvolvimento modular e reutilizável, pois permitem criar componentes independentes e reutilizáveis.
Gabarito: C — CERTO.
Link permanente: /questoes/qg596730