Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад

Какие типы переменных есть в Ruby?

Вопрос проверяет знание различных типов переменных и их областей видимости в Ruby.

Короткий ответ

В Ruby есть четыре типа переменных:

- Локальные (local_variable) — видны только внутри блока, метода или класса.

- Переменные экземпляра (@instance_variable) — принадлежат конкретному объекту.

- Переменные класса (@@class_variable) — делятся между всеми экземплярами класса.

- Глобальные ($global_variable) — доступны из любого места программы.

Длинный ответ

Переменные в Ruby различаются по области видимости:

 

- Локальные переменные: начинаются с маленькой буквы или _, доступны только внутри метода или блока, где они определены.

def example  
  x = 10  
  puts x  
end  
example # => 10  

 

- Переменные экземпляра: начинаются с @, принадлежат объекту и сохраняют свое значение между вызовами методов объекта.

class Person  
  def initialize(name)  
    @name = name  
  end  

  def name  
    @name  
  end  
end  
person = Person.new("John")  
puts person.name # => John  

 

- Переменные класса: начинаются с @@, используются для хранения данных, общих для всех экземпляров класса.

class Counter  
  @@count = 0  

  def initialize  
    @@count += 1  
  end  

  def self.count  
    @@count  
  end  
end  
Counter.new  
Counter.new  
puts Counter.count # => 2  

 

- Глобальные переменные: начинаются с $, доступны из любой части программы, но их использование не рекомендуется из-за сложности отладки.

$global_variable = "I am global"  
def example  
  puts $global_variable  
end  
example # => I am global  

 

Вывод: Выбор типа переменной зависит от области видимости и контекста использования.

Уровень

  • Рейтинг:

    4

  • Сложность:

    3

Навыки

  • Ruby

Ключевые слова

#variable

#scope

#instance variable

#class

#global

#local

Подпишись на Ruby Developer в телеграм