Часто мы можем использовать p foo
или foo.inspect
, чтобы увидеть переменные экземпляра, но это только поведение по умолчанию, и объект может выбрать отображение чего-то другого (или скрыть все переменные экземпляра) (возможно, путем повторного определения метод inspect
).
Основной вопрос, если я вижу для foo.inspect
, что @bar
является объектом, имеющим экземплярную переменную @wah
, которая имеет значение "hello"
, могу ли я распечатать @wah
напрямую , если нет доступа (читателя) для @bar
и @wah
? Обычно он не должен быть читаемым, если нет средства доступа, но что, если для целей отладки?