Làm thế nào để thay đổi khả năng hiển thị của các phương thức trong Ruby (đóng gói)?
Làm thế nào để thay đổi khả năng hiển thị của các phương thức trong Ruby (đóng gói)?
Trong Ruby, khả năng hiển thị của các phương thức được thay đổi thông qua việc sử dụng các từ khóa public
, protected
, và private
để kiểm soát quyền truy cập vào các phương thức đó. Đây là một phần của tính năng đóng gói (encapsulation) trong lập trình hướng đối tượng, giúp ẩn đi các chi tiết triển khai bên trong của một đối tượng và chỉ tiết lộ những gì cần thiết cho việc sử dụng đối tượng đó.
Public: Phương thức được định nghĩa là public
có thể được truy cập từ bất kỳ đâu, bên trong hoặc bên ngoài lớp mà nó được định nghĩa. Đây là mức độ mặc định cho các phương thức trong Ruby nếu không có từ khóa nào được chỉ định.
Protected: Phương thức được định nghĩa là protected
chỉ có thể được truy cập từ bên trong lớp mà nó được định nghĩa và các lớp con của nó. Nó không thể được truy cập trực tiếp từ bên ngoài lớp nhưng có thể được gọi thông qua các phương thức khác bên trong lớp hoặc từ các lớp con.
Private: Phương thức được định nghĩa là private
chỉ có thể được truy cập từ bên trong lớp mà nó được định nghĩa. Không thể truy cập trực tiếp từ bên ngoài lớp hoặc từ các lớp con. Trong Ruby, các phương thức private
chỉ có thể được gọi mà không có người nhận rõ ràng (tức là không sử dụng self
hoặc tên của đối tượng khi gọi phương thức).
Ví dụ về cách sử dụng các từ khóa này để thay đổi khả năng hiển thị của các phương thức trong Ruby:
class Example
public
def public_method
puts "This is a public method."
end
protected
def protected_method
puts "This is a protected method."
end
private
def private_method
puts "This is...
junior
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào