Câu hỏi phỏng vấn Ruby on Rails
Câu hỏi

Định nghĩa Biến Instance, Biến Global và Biến Class trong Ruby

Câu trả lời

Trong Ruby, việc định nghĩa các loại biến khác nhau là một phần quan trọng của việc lập trình hướng đối tượng. Dưới đây là cách định nghĩa ba loại biến phổ biến: biến instance (instance variable), biến global (global variable) và biến class (class variable).

Biến Instance (Instance Variable)

Biến instance là biến được sử dụng để lưu trữ thông tin đặc thù cho mỗi đối tượng của một class. Mỗi khi một đối tượng mới được tạo ra, một bản sao mới của biến instance sẽ được tạo ra và gắn liền với đối tượng đó. Biến instance được định nghĩa bắt đầu bằng ký tự @ và chỉ có thể truy cập từ bên trong các phương thức của đối tượng đó[1][3][8][9][10].

Ví dụ:

class Product
  def initialize(name, price)
    @name = name
    @price = price
  end
end

Trong ví dụ trên, @name@price là các biến instance của class Product.

Biến Global (Global Variable)

Biến global là biến có thể truy cập từ bất kỳ đâu trong chương trình Ruby của bạn. Biến global được định nghĩa bắt đầu bằng ký tự $ và nên được sử dụng một cách cẩn thận vì chúng có thể gây ra các vấn đề liên quan đến việc quản lý trạng thái toàn cục và khó khăn trong việc debug[1][3].

Ví dụ:

$global_variable = "Available Everywhere"

Trong ví dụ trên, $global_variable là một biến global có thể được truy cập từ bất kỳ nơi nào trong chương trình.

Biến Class (Class Variable)

Biến class là biến được chia sẻ giữa tất cả các instance của một class. Biến class được định nghĩa bắt đầu bằng hai ký tự @@ và có thể truy cập từ ...

junior

junior

Gợi ý câu hỏi phỏng vấn

senior

Tủ rack là gì?

middle

Mục đích của Rakefile có sẵn trong thư mục demo trong Ruby là gì?

middle

Nêu sự khác biệt giữa việc gọi super() và gọi super là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào