Sobre a orientação a objetos, é correto afirmar:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Gabarito Correto: C
Explicação sobre o tema:
O paradigma de programação orientada a objetos (OO) é um modelo de análise, concepção e programação baseado na composição e interação entre diversas unidades de software chamadas de objetos. Cada objeto é capaz de receber mensagens, processar dados e enviar mensagens a outros objetos. Cada objeto pode ser visto como uma pequena máquina com um papel ou responsabilidade específica.
Um aspecto fundamental da programação OO é o encapsulamento que é conseguido através dos modificadores de acesso: public, private e protected. Estes controlam não apenas a visibilidade dos métodos, mas também das variáveis (propriedades) de um objeto. Além disso, a sobrecarga de construtores é uma característica da OO que permite a criação de múltiplas versões de um construtor, cada uma com diferentes listas de parâmetros.
Justificativa para a alternativa correta (C):
A alternativa C está correta porque, de fato, na orientação a objetos é possível ter vários construtores numa mesma classe, o que é conhecido como sobrecarga de construtores (constructor overloading). Isso permite que um objeto seja inicializado de diferentes maneiras, dependendo dos argumentos que são passados para o construtor no momento da criação do objeto. Essa flexibilidade é muito útil na prática, pois diferentes situações exigem diferentes formas de inicialização de um objeto.
Vejamos um exemplo simples: podemos ter um construtor que recebe um nome e um ID para inicializar um objeto do tipo Employee, e outro construtor na mesma classe que recebe apenas o nome, assumindo que o ID será gerado automaticamente. Assim, o desenvolvedor pode escolher o construtor mais apropriado conforme a situação.
Os outros itens apresentam equívocos comuns:
- A alternativa A confunde a existência de variáveis e métodos de classe (estáticos) que de fato não precisam de uma instância de objeto para serem utilizados, mas a afirmação sugere que se aplica a todos os métodos e variáveis públicos, o que não é correto.
- A alternativa B é incorreta porque os modificadores de acesso controlam a visibilidade de todos os membros de uma classe, incluindo variáveis e métodos.
- A alternativa D é falsa pois construtores sem argumentos, também conhecidos como construtores padrão ou default constructors, são perfeitamente válidos e úteis para inicializar um objeto com valores padrão, e não causam erros em tempo de execução por não receberem parâmetros.
- A alternativa E está errada porque o uso de métodos set e get é uma prática para acessar variáveis privadas e protegidas de uma classe, não apenas públicas. Além disso, não é obrigatório usar esses métodos para acessar variáveis públicas, apesar de ser uma boa prática para manter o encapsulamento.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
B) ERRADA - Os modificadores de acesso controlam acesso aos membros de uma classe, e como membros de classe entende-se que são os métodos e as variáveis de instâncias (atributos). Portanto, o 'apenas' invalidou a alternativa.
C) CORRETA
D) ERRADA - Um construtor pode ser invocado sem nenhum argumento, parâmetro, sem problemas.
E) ERRADA - Os dados podem ser acessados de outra forma, além do get e set. Aliás, uma boa prática em programação é nunca criar um get ou set sem a necessidade. A expressão 'devem' invalida a alternativa.
c-
construtores sobrecarregados é o overloading, um tipo de polimorfismo que permite iniciar uma instancia com varias opcoes de parametros
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo