Questão nº 58
Questão de Tecnologia da Informação - Sistemas de Informação · FCC TRT15 2023 (nº 58)
Considere o seguinte texto e exemplo de trecho de código Java a seguir:
Para não se usar uma classe de forma incorreta como, por exemplo, uma classe que tem um método de divisão entre dois atributos da classe, se o técnico Java não conhecer a implementação interna da classe, ele pode inserir um valor zero no atributo do dividendo, porém se a classe estiver corretamente codificada pode-se impedir que o técnico faça isso. Esse tipo de impedimento é feito utilizando-se um dos princípios da orientação a objetos que embasa a implementação via alguns métodos usados no código:
package com.trt15.model;
public class Divisao {
private int num1;
private int num2;
public void divisao() {
System.out.println("A divisao e: " + (num1 / num2));
}
public int getNum1() {
return num1;
}
public void setNum1(int num1) {
this.num1 = num1;
}
public int getNum2() {
return num2;
}
public void setNum2(int num2) {
if (num2 == 0) {
num2 = 1;
} else {
this.num2 = num2;
}
}
}
O conteúdo do texto exemplifica um dos conceitos conforme utilizado na orientação a objetos e o trecho de código implementa esse conceito usando dois métodos em conjunto.
O conceito e os métodos utilizados são, correta e respectivamente,
- Aherança, divisao e return.
- Bhiding, this e get.
- Cencapsulamento, get e set. (alternativa correta)
- Dhiding, set e return.
- Epolimorfismo, this e return.
Resposta comentada
Gabarito Alternativa C
O encapsulamento é um princípio da Orientação a Objetos que consiste em agrupar dados (atributos) e os métodos que operam sobre esses dados dentro de uma única unidade (a classe), além de controlar o acesso a esses dados, protegendo-os de modificações indesejadas.
- (A) Incorreta: Herança é um mecanismo para criar novas classes a partir de classes existentes, e
divisaoereturnsão métodos ou palavras-chave, não conceitos de encapsulamento. - (C) Correta: O encapsulamento é o conceito central, e os métodos
get(getters) eset(setters) são as ferramentas que permitem acessar e modificar os atributos de forma controlada, como visto nosetNum2que impede a divisão por zero. - (B) Incorreta: Hiding (ocultação de informação) é um aspecto do encapsulamento, mas
thisrefere-se à instância atual egeté apenas um tipo de método, não cobrindo completamente o conceito e os métodos em conjunto. A armadilha aqui é focar em "hiding" e não no conceito mais amplo de encapsulamento, e misturarthisque é uma referência interna comgetque é um padrão de método. - (D) Incorreta: Hiding é um aspecto, mas não o conceito completo, e
seté um tipo de método, enquantoreturné uma palavra-chave para retornar valores, não um método que implementa o controle de acesso. - (E) Incorreta: Polimorfismo permite que objetos de diferentes classes respondam à mesma mensagem de maneiras diferentes, e
thisereturnnão representam esse conceito nem os métodos de acesso.
Fonte: FCC TRT15 2023 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.