FC ConcursosFC Concursos

Questão FC373282

Considere, abaixo, o trecho de código Java, que não apresenta erros, para uma classe que fará o teste da classe Funcionario. Considere que a classe Funcionario foi corretamente cri

Linguagens de Programação

FCC · 2019

Considere, abaixo, o trecho de código Java, que não apresenta erros, para uma classe que fará o teste da classe Funcionario. Considere que a classe Funcionario foi corretamente criada em condições ideais. 

 

public class TesteFunc {

       public static void main (String[ ] args){

            Funcionario func1;

            func1 = new Funcionario( );

 

            func1.setMatricula (20171234);

            func1.setNome("Ana Silvestry");

            func1.setCargo("Analista de Tecnologia da Informação");

       }

}

 

Com base no código e nos conceitos de orientação a objeto afirma-se, corretamente:

  1. Estão sendo armazenados valores nos objetos do método func1, instanciado a partir da interface sem parâmetros da classe Funcionario.
  2. Métodos destinados a armazenar valores nos atributos são conhecidos como métodos getters e aqueles que obtêm os valores armazenados são conhecidos como métodos setters.
  3. O Java organiza as classes dentro de interfaces. Uma interface reúne classes relacionadas. Além de organizar melhor os aplicativos e bibliotecas, a interface possibilita que várias classes sejam criadas com o mesmo nome sem que ocorram conflitos, uma vez que pertençam a interfaces diferentes.
  4. Como na classe Funcionario há pelo menos 3 objetos, deve haver um método get para cada um deles. Um destes métodos seria public void getterNome(String nome) { nome=this.nome; }.
  5. Como na classe Funcionario há pelo menos estes 3 atributos, deve haver um método setter para cada um deles. Um destes métodos seria public void setMatricula(int matricula) {this.matricula=matricula;}.
Mostrar resposta e comentário

Gabarito

Errado

Comentário do professor

A alternativa aponta corretamente que, diante de atributos na classe Funcionario, é necessário fornecer métodos de acesso para manter o encapsulamento. Isso significa declarar os atributos como privados e permitir leitura/escrita apenas por meio de métodos controlados.

Um método para atribuir valor a um atributo segue a convenção de nome setter — por exemplo, setMatricula. Sua assinatura inclui visibilidade public, tipo de retorno void e um parâmetro com o mesmo tipo do atributo (aqui, int).

Ao usar o mesmo nome de parâmetro do atributo, é preciso distinguir entre os dois: o identificador this referencia o atributo da instância. Assim, public void setMatricula(int matricula) { this.matricula = matricula; } atribui corretamente o valor recebido ao campo interno.

No código de teste, a chamada func1.setMatricula(20171234) invoca esse setter para armazenar a matrícula no objeto, preservando a integridade e a abstração dos dados.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo