Sử dụng biến nào có thể gây ra thiết lập các giá trị sai cho biến như giá trị đầu vào không thể được kiểm tra .
ví dụ:
public class A{
public int x; // Value can be directly assigned to x without checking.
}
Sử dụng setter có thể được sử dụng để thiết lập các biến với kiểm tra đầu vào. Giữ dụ varibale tư nhân, và getter và công setter là một hình thức Encapsulation getter và setter cũng tương thích với Java Beans chuẩn,
getter và setter cũng giúp trong thực hiện đa hình khái niệm
ví dụ:
public class A{
private int x; //
public void setX(int x){
if (x>0){ // Checking of Value
this.x = x;
}
else{
System.out.println("Input invalid");
}
}
public int getX(){
return this.x;
}
dụ đa hình: Chúng ta có thể assig n Biến tham chiếu đối tượng của kiểu phụ làm đối số từ phương thức gọi đến biến tham chiếu đối tượng của tham số siêu lớp của phương thức được gọi.
public class Animal{
public void setSound(Animal a) {
if (a instanceof Dog) { // Checking animal type
System.out.println("Bark");
}
else if (a instanceof Cat) { // Checking animal type
System.out.println("Meowww");
}
}
}
Nguồn
2012-06-17 12:56:51
bản sao có thể có của [Tại sao sử dụng getters và setters?] (Http://stackoverflow.com/questions/1568091/why-use-getters-and-setters) và [Getters và setters được triển khai tự động so với các trường công khai] (http://stackoverflow.com/questions/111461) –