Vídeo: Curso Java Orientado a Objetos - Como criar uma Classe em Java 2024
Um dos problemas que costuma confundir muitos novos desenvolvedores Java (e alguns desenvolvedores Java experientes também) é o conceito de propriedades em Java. Algumas linguas possuem um mecanismo formal para trabalhar com propriedades, mas o Java não fornece esse mecanismo.
Além disso, há algum nível de confusão sobre a terminologia que o Java usa para elementos específicos do programa que estão relacionados às propriedades. Esta seção usa um conjunto específico de termos que refletem a terminologia usada pela maioria dos desenvolvedores Java, mas você deve esperar para ver outros usos enquanto você olha em volta.
A propriedade é um valor que você pode acessar como parte da classe ou o objeto criado a partir da classe. Você usa propriedades para fornecer acesso a uma variável global, que também é chamado de campo .
A melhor prática é sempre fazer campos privados e, em seguida, confiar em métodos especiais getter e setter para acessá-los. A combinação de campo, getter e setter é uma propriedade em Java. Aqui está um exemplo típico que usa um int chamado MyInt.
// Crie o campo MyInt. private int MyInt = 0; // Obter o valor atual do MyInt. public int getMyInt () {return MyInt;} // Defina um novo valor para MyInt. public void setMyInt (int MyInt) {this. MyInt = MyInt;}
Neste exemplo, o código declara uma variável privada, MyInt, e atribui-lhe um valor de 0. O getter, getMyInt (), fornece o valor atual do MyInt para o chamador, enquanto o setter, setMyInt (), permite que o chamador altere o valor de MyInt.
A razão pela qual você deseja usar as propriedades é para que você tenha um melhor controle sobre como um interlocutor interage com o MyInt. Ao usar setters e getters, você possibilita tarefas como verificar o intervalo de valores que um chamador fornece e depois lançar uma exceção quando a entrada está incorreta de alguma forma.
Um campo é um tipo de variável global que contém dados que a classe ou o objeto gerencia. Alguns desenvolvedores estendem o termo campo para incluir todos os tipos de outros significados, mas este livro usa campo para significar especificamente uma variável globalmente acessível.
Getters e setters são métodos especiais que fornecem acesso aos campos. O uso de getters e setters ajuda você a controlar o acesso ao campo e reduz a chance de que o campo seja usado incorretamente.
Para proteger um campo contra danos, como receber valores de dados incorretos, você deve declará-lo como privado e confiar em getters e setters para acessá-lo. Os getters e setters devem fornecer todas as verificações necessárias para garantir que o interlocutor interage com o campo privado corretamente.