Phương Thức

Định Nghĩa Phương Thức

Phương thức trong Ruby tương tự như khái niệm hàm trong một số ngôn ngữ phổ biến khác. Phương thức giúp gộp một hay nhiều câu lệnh và sử dụng chúng lặp đi lặp lại nhiều lần trong chương trình.

def say
  puts "Xin Chào"
end

Chạy

Ví dụ trên định nghĩa một phương thức say sử dụng từ khóa def (viết tắt của từ define) theo sau bởi tên phương thức:

def say
...

Tiếp theo là phần nội dung hàm gồm các câu lệnh mà chúng ta muốn thực hiện khi gọi hàm. Ở đây chúng ta có một câu lệnh:

puts "Xin Chào"

Cuối cùng chúng ta sử dụng từ khóa end để hoàn tất việc định nghĩa phương thức say:

end

Gọi Phương Thức

Để thực thi các câu lệnh bên trong phương thức chúng ta cần gọi phương thức. Để gọi phương thức này chúng ta thêm cặp dấu ngoặc đơn () vào phía sau tên phương thức:

def say
  puts "Xin Chào"
end

say() # hiển thị: Xin Chào

Chạy

Khác với các ngôn ngữ khác khi gọi hàm bạn buộc phải sử dụng cặp dấu ngoặc đơn sau tên hàm, ngôn ngữ Ruby cho phép chúng ta có thể gọi hàm mà không cần sử dụng cặp dấu ngoặc () như sau:

def say
  puts "Xin Chào"
end

say # Xin Chào

Chạy

Tham Số, Đối Số

Tham số được sử dụng để truyền dữ liệu vào phương thức khi phương thức được gọi. Ví dụ:

def hello(name)
  puts "Chào #{name}"
end

Ở trên chúng ta định nghĩa phương thức hello với một tham số là name. Bên trong phương thức chúng ta sử dụng giá trị của tham số bằng cách đặt tên tham số bên trong #{ }:

puts "Chào #{name}"

Khi gọi phương thức chúng ta cần truyền vào giá trị cho tham số (hay đối số):

def hello(name)
  puts "Chào #{name}"
end

hello("Ruby") # Chào Ruby

Chạy

Bạn cũng có thể định nghĩa phương thức cho phép việc truyền vào tham số hay không là tùy ý bằng cách đặt giá trị mặc định cho tham số:

def hello(name = "Ruby")
  puts "Chào #{name}"
end

Khi gọi phương thức hello ở trên, nếu bạn không truyền đối số vào thì đối số mặc định Ruby sẽ được sử dụng:

def hello(name = "Ruby")
  puts "Chào #{name}"
end

hello

Chạy

Hướng Dẫn Liên Quan