Nếu bạn học qua OOP bạn sẽ học tới phần đóng gói, che dấu dữ liệu phía sau, không cho truy cập trực tiếp mà phải thông qua một thằng cò trung gian.
Ví dụ bạn muốn lấy tiền, bạn không thể mở tủ tiền ra lấy trực tiếp được, mà phải thông qua bố hoặc mẹ bạn. Khi đó Getter nói chung làm nhiệm vụ như mẹ bạn có quyền xử lý số tiền đó trước khi đưa cho bạn. Setter tương tự.
Phía trên Setter hay Getter mới chỉ là định nghĩa. Khi ta thực hiện nó sẽ trông như sau.
Với Java bạn thường thông qua một method get...() hay set...() mà bên trong xử lý sao đó mà get trả về kiểu của data cần lấy ra, còn set thường sẽ trả về void.
public Money getMoney()
{
// Đặt xử lý của bạn chỗ này
return this._money;
}
public void setMoney(Money value)
{
// Đặt xử lý của bạn chỗ này
this._money = value;
}
Với C# thì nó rút gọn lại thành mấy cái keyword get set cho nó tiện hơn thôi. Còn lại bản chất nó như một method.
K9SuperAdmin, KquizAdmin, KquizAuthorđã bình luận19:18 18-08-2021
làm gì có set() với get() bạn. có set; và get; thằng này nó return lại chính thằng wrap nó thôi. còn nếu bạn khai triển ra chi tiết hơn. thì thành
Set {_privateVariable = value;}
Get{return _privateVariable}
Nếu bạn học qua OOP bạn sẽ học tới phần đóng gói, che dấu dữ liệu phía sau, không cho truy cập trực tiếp mà phải thông qua một thằng cò trung gian.
Ví dụ bạn muốn lấy tiền, bạn không thể mở tủ tiền ra lấy trực tiếp được, mà phải thông qua bố hoặc mẹ bạn. Khi đó Getter nói chung làm nhiệm vụ như mẹ bạn có quyền xử lý số tiền đó trước khi đưa cho bạn. Setter tương tự.
Phía trên Setter hay Getter mới chỉ là định nghĩa. Khi ta thực hiện nó sẽ trông như sau.
Với Java bạn thường thông qua một method get...() hay set...() mà bên trong xử lý sao đó mà get trả về kiểu của data cần lấy ra, còn set thường sẽ trả về void.
Với C# thì nó rút gọn lại thành mấy cái keyword get set cho nó tiện hơn thôi. Còn lại bản chất nó như một method.
làm gì có set() với get() bạn. có set; và get; thằng này nó return lại chính thằng wrap nó thôi. còn nếu bạn khai triển ra chi tiết hơn. thì thành
Nó chỉ là tính đóng gói của OOP thôi