string中級
Ruby の `freeze` メソッドの役割はどれですか?
- オブジェクトをコピーして変更不可にする
- オブジェクト自体を変更不可(イミュータブル)にする
- オブジェクトを nil にする
- クラスの継承を禁止する
解説
`freeze` を呼ぶとオブジェクト自体が凍結され、以降の変更操作で `FrozenError` が発生します。Ruby 3.0 以降では文字列リテラルはデフォルトでフリーズされていません(frozen_string_literal: true マジックコメントで有効化可能)。