Informática, perguntado por lucianorodrigue2830, 1 ano atrás

Em relação a conceitos de Java, marque a alternativa correta: Quest.: 1 O método getter não permite esconder o formato (tipo de dado) com que um atributo está armazenado. Sempre que houver confusão entre nomes de variáveis de um método com os nomes de atributos de uma classe, devemos usar a palavra this para nos referir ao atributo. Seja a sentença: public class Livro extends Produto. Podemos dizer que todo objeto do tipo Produto será, ao mesmo tempo, um objeto do tipo Livro. Para que um atributo não seja modificado por outras classes, deve-se liberar o método getter daquela variável. Os métodos que servem para modificar atributos são chamados de getters.

Soluções para a tarefa

Respondido por bokomoko
0
O método getter não permite esconder o formato (tipo de dado) com que um atributo está armazenado.
Pergunta capiciosa. a rigor, sim. O método getter pode esconder o formato em que o atributo está armazenado. Por exemplo
public class Pessoa {
    private int sexo ;

    public String getSexo() { 
          if (this.sexo == 1 ) {
              return "F" ;
         } else {
               return "M";
         }
    } 

   public void setSexo( String genero) { 
      if (genero.equals("F") ) { 
          this.sexo = 1 ;
      } else {
          this.sexo = 0 ; 
      }
   } 

O que temos aí é que o dado é armazenado como inteiro. Porém, os métodos get e set utilizam string. Esse é um exemplo que demonstra como os métodos podem sim ocultar qual o formato como o dado é armazenado. No entanto, e aí é que está a pegadinha, do ponto de vista semântico, o sexo só pode assumir os valores "F" ou "M". Então como ficamos ? Essa é uma questão interessantíssima.

Sempre que houver confusão entre nomes de variáveis de um método com os nomes de atributos de uma classe, devemos usar a palavra this para nos referir ao atributo.
Verdade. Por isso que recomendo sempre usar nomes de parâmetros diferentes de nomes de atributos porém, tem vezes que não dá para diferenciar e o jeito é usar o this. Em suma, na dúvida, use o this

Seja a sentença: public class Livro extends Produto. Podemos dizer que todo objeto do tipo Produto será, ao mesmo tempo, um objeto do tipo Livro.
Falso. Pelo contrário. Observe que a classe Livro extende a classe Produto. Portanto a classe Livro é uma subclasse da classe Produto. Então acontece exatamente o contrário. Todo objeto do tipo Livro é um objeto do tipo Produto.

Para que um atributo não seja modificado por outras classes, deve-se liberar o método getter daquela variável.
Falso. Para que um atributo não seja modificado por outras classes deve-se liberar um método setter daquela variável. Além disso, é recomendado que a variável seja declarada como private. Por causa disso (de ser declarada private) aí tem-se que criar um método getter para aquela classe. É meio confuso porque uma coisa não implica na outra diretamente.  

Os métodos que servem para modificar atributos são chamados de getters.
falso. Os métodos que servem para modificar atributos são chamados setters. Os getters são para obter o valor dos atributos.

Perguntas interessantes