30/09/2018, 16:55
Hàm lấy dữ liệu thành viên hay hàm bạn?
trong oop có nên dùng các hàm getx() gety() để lấy dữ liệu thành viên không mọi người hay là phải dùng hàm bạn…getx() gety() có làm mất tính bao gói trong oop không nhỉ
Bài liên quan
Dữ liệu thành viên là gì?
thuộc tính của đối tượng
Và hàm bạn là gì?
Nếu bạn biết mong bạn giải thích.
Mình hỏi thật để biết bạn muốn hỏi gì mà tại bạn dùng từ hơi lạ.
Thứ nhất property thì gọi là thuộc tính. Để thiết lập giá trị cho thuộc tính bạn viết hàm set data hay được gọi là setter. Tương tự như vậy để lấy giá trị của thuộc tính thì bạn viết hàm get data gọi là getter.
Thông thường ứng với mỗi thuộc tính của đối tượng ta tạo ra 1 cặp getter và setter và scope là public giúp cho đối tượng khác tương tác với thuộc tính của mình thông qua getter và setter. Điều này che giấu được thuộc tính của đối tượng nên cũng được gọi là 1 phần trong tính đóng gói ( không phải bao gói)
Người ta dùng các hàm như setX() setY() và getX() getY() để tạo ra tính đóng gói cho một class. Sao bạn lại sợ dùng mấy hàm đó làm mất tính đóng gói?
Dùng phương thức getx() gety() để đóng gói. 2 phương thức này sẽ liên kết đến các biến thành viên của class.
get/set nó được dùng để đảm bảo tính đóng gói mà bạn, còn hàm bạn mới ngại tới tính đóng gói.
Cám ơn bạn, những thuật ngữ mình dùng là do môi trường mình theo học và tiếp xúc giảng viên dùng vậy. Sách lập trình hđh của giảng viên Đh cần thơ cũng dùng vậy nên thành thói quen.