上級
STAGE 1
110問目 • 10
  • Q1

    RubyのProcとは何ですか?

    ANSWER
    ブロックをオブジェクト化したもの
    クリックして解説を表示
    EXPLANATION

    Procはブロックをオブジェクト化したもので、変数に格納したり引数として渡したりできます。

  • Q2

    Procを作成する正しい方法はどれですか?

    ANSWER
    Proc.new { ... }
    クリックして解説を表示
    EXPLANATION

    Proc.newまたはprocメソッドでProcオブジェクトを作成します。

  • Q3

    Procを実行するメソッドはどれですか?

    ANSWER
    call
    クリックして解説を表示
    EXPLANATION

    callメソッドまたは[]演算子でProcを実行します。

  • Q4

    次のコードの出力は何ですか?

    my_proc = Proc.new { |x| x * 2 }
    puts my_proc.call(5)
    ANSWER
    10
    クリックして解説を表示
    EXPLANATION

    Procに5を渡して実行すると、5 * 2 = 10が返されます。

  • Q5

    Lambdaを作成する正しい方法はどれですか?

    ANSWER
    -> { ... }
    クリックして解説を表示
    EXPLANATION

    lambda { ... }または-> { ... }でLambdaを作成します。

  • Q6

    ProcとLambdaの違いとして正しいものはどれですか?

    ANSWER
    Lambdaは引数の数を厳密にチェックする
    クリックして解説を表示
    EXPLANATION

    Lambdaは引数の数を厳密にチェックし、Procは緩やかです。

  • Q7

    次のコードの出力は何ですか?

    my_lambda = ->(x, y) { x + y }
    puts my_lambda.(3, 4)
    ANSWER
    7
    クリックして解説を表示
    EXPLANATION

    .(...)はLambdaを呼び出す省略記法で、callと同じです。

  • Q8

    ProcとLambdaでreturnの動作の違いは何ですか?

    ANSWER
    Procのreturnは呼び出し元のメソッドからも戻る
    クリックして解説を表示
    EXPLANATION

    Procのreturnは呼び出し元のメソッドからも戻りますが、Lambdaは自身からのみ戻ります。

  • Q9

    ブロックをProcとして受け取る引数の記法はどれですか?

    ANSWER
    &block
    クリックして解説を表示
    EXPLANATION

    &をつけた引数でブロックをProcオブジェクトとして受け取れます。

  • Q10

    次のコードの出力は何ですか?

    def execute(&block)
      block.call(10)
    end
    puts execute { |n| n * 3 }
    ANSWER
    30
    クリックして解説を表示
    EXPLANATION

    ブロックがProcとして受け取られ、10 * 3 = 30が返されます。

STAGE 2
1120問目 • 10
  • Q11

    Procをブロックとしてメソッドに渡す方法はどれですか?

    ANSWER
    method(&proc)
    クリックして解説を表示
    EXPLANATION

    &をつけてProcを渡すと、ブロックとして展開されます。

  • Q12

    次のコードの出力は何ですか?

    doubler = ->(x) { x * 2 }
    puts [1, 2, 3].map(&doubler).inspect
    ANSWER
    [2, 4, 6]
    クリックして解説を表示
    EXPLANATION

    Lambdaをブロックとしてmapに渡し、各要素を2倍にします。

  • Q13

    クロージャとは何ですか?

    ANSWER
    定義時のスコープの変数を保持する関数
    クリックして解説を表示
    EXPLANATION

    クロージャは定義時のスコープの変数を保持する関数(Proc/Lambda)です。

  • Q14

    次のコードの出力は何ですか?

    def counter
      count = 0
      -> { count += 1 }
    end
    c = counter
    puts c.call
    puts c.call
    ANSWER
    1 2(それぞれ改行)
    クリックして解説を表示
    EXPLANATION

    Lambdaがcountをクロージャとして保持し、呼び出すたびにインクリメントされます。

  • Q15

    メタプログラミングとは何ですか?

    ANSWER
    プログラムが自分自身を操作・生成する技法
    クリックして解説を表示
    EXPLANATION

    メタプログラミングはプログラムが自分自身を操作・生成する技法です。

  • Q16

    オブジェクトが持つメソッド一覧を取得するメソッドはどれですか?

    ANSWER
    methods
    クリックして解説を表示
    EXPLANATION

    methodsメソッドでオブジェクトが持つメソッド名の配列を取得できます。

  • Q17

    オブジェクトが特定のメソッドを持っているか確認するメソッドはどれですか?

    ANSWER
    respond_to?
    クリックして解説を表示
    EXPLANATION

    respond_to?でオブジェクトが特定のメソッドに応答するか確認できます。

  • Q18

    メソッドを動的に呼び出すメソッドはどれですか?

    ANSWER
    send
    クリックして解説を表示
    EXPLANATION

    sendまたは__send__でメソッド名を指定して動的に呼び出せます。

  • Q19

    次のコードの出力は何ですか?

    str = "hello"
    puts str.send(:upcase)
    ANSWER
    HELLO
    クリックして解説を表示
    EXPLANATION

    sendでシンボル:upcaseを指定してメソッドを呼び出します。

  • Q20

    クラスにメソッドを動的に定義するメソッドはどれですか?

    ANSWER
    define_method
    クリックして解説を表示
    EXPLANATION

    define_methodでメソッドを動的に定義できます。

STAGE 3
2130問目 • 10
  • Q21

    次のコードの出力は何ですか?

    class MyClass
      [:foo, :bar].each do |name|
        define_method(name) { name.to_s }
      end
    end
    puts MyClass.new.foo
    ANSWER
    foo
    クリックして解説を表示
    EXPLANATION

    define_methodで動的にfooメソッドが定義され、"foo"を返します。

  • Q22

    存在しないメソッドが呼ばれた時に呼び出されるメソッドはどれですか?

    ANSWER
    method_missing
    クリックして解説を表示
    EXPLANATION

    method_missingは存在しないメソッドが呼ばれた時に呼び出されます。

  • Q23

    次のコードの出力は何ですか?

    class MyClass
      def method_missing(name, *args)
        "Called: #{name}"
      end
    end
    puts MyClass.new.anything
    ANSWER
    Called: anything
    クリックして解説を表示
    EXPLANATION

    anythingメソッドは存在しないのでmethod_missingが呼ばれます。

  • Q24

    method_missingと一緒に定義すべきメソッドはどれですか?

    ANSWER
    respond_to_missing?
    クリックして解説を表示
    EXPLANATION

    respond_to_missing?を定義することでrespond_to?が正しく動作します。

  • Q25

    インスタンス変数を動的に取得するメソッドはどれですか?

    ANSWER
    instance_variable_get
    クリックして解説を表示
    EXPLANATION

    instance_variable_getでインスタンス変数の値を取得できます。

  • Q26

    インスタンス変数を動的に設定するメソッドはどれですか?

    ANSWER
    instance_variable_set
    クリックして解説を表示
    EXPLANATION

    instance_variable_setでインスタンス変数の値を設定できます。

  • Q27

    次のコードの出力は何ですか?

    class Person
      def initialize
        @name = "Alice"
      end
    end
    p = Person.new
    puts p.instance_variable_get(:@name)
    ANSWER
    Alice
    クリックして解説を表示
    EXPLANATION

    instance_variable_get@nameの値"Alice"を取得します。

  • Q28

    クラスのインスタンス変数一覧を取得するメソッドはどれですか?

    ANSWER
    instance_variables
    クリックして解説を表示
    EXPLANATION

    instance_variablesでインスタンス変数名の配列を取得できます。

  • Q29

    クラスを動的に作成するメソッドはどれですか?

    ANSWER
    Class.new
    クリックして解説を表示
    EXPLANATION

    Class.newで匿名クラスを動的に作成できます。

  • Q30

    次のコードの出力は何ですか?

    MyClass = Class.new do
      def hello
        "Hello!"
      end
    end
    puts MyClass.new.hello
    ANSWER
    Hello!
    クリックして解説を表示
    EXPLANATION

    Class.newで動的にクラスを作成し、helloメソッドを定義しています。

STAGE 4
3140問目 • 10
  • Q31

    evalメソッドの役割は何ですか?

    ANSWER
    文字列をRubyコードとして実行する
    クリックして解説を表示
    EXPLANATION

    evalは文字列をRubyコードとして評価・実行します。

  • Q32

    次のコードの出力は何ですか?

    code = "2 + 3"
    puts eval(code)
    ANSWER
    5
    クリックして解説を表示
    EXPLANATION

    evalで文字列"2 + 3"がRubyコードとして評価され、5が返されます。

  • Q33

    class_evalの役割は何ですか?

    ANSWER
    クラスのコンテキストでコードを評価する
    クリックして解説を表示
    EXPLANATION

    class_evalはクラスのコンテキストでコードを評価します。

  • Q34

    instance_evalの役割は何ですか?

    ANSWER
    オブジェクトのコンテキストでコードを評価する
    クリックして解説を表示
    EXPLANATION

    instance_evalはオブジェクトのコンテキストでコードを評価します。

  • Q35

    次のコードの出力は何ですか?

    class MyClass
      @class_var = "Hello"
    end
    puts MyClass.instance_eval { @class_var }
    ANSWER
    Hello
    クリックして解説を表示
    EXPLANATION

    instance_evalでクラスのコンテキストで@class_varにアクセスします。

  • Q36

    フックメソッドのincludedはいつ呼ばれますか?

    ANSWER
    モジュールがincludeされた時
    クリックして解説を表示
    EXPLANATION

    includedはモジュールがincludeされた時に呼ばれます。

  • Q37

    フックメソッドのinheritedはいつ呼ばれますか?

    ANSWER
    クラスが継承された時
    クリックして解説を表示
    EXPLANATION

    inheritedはクラスが継承された時に呼ばれます。

  • Q38

    次のコードの出力は何ですか?

    class Parent
      def self.inherited(subclass)
        puts "Inherited by #{subclass}"
      end
    end
    class Child < Parent
    end
    ANSWER
    Inherited by Child
    クリックして解説を表示
    EXPLANATION

    ChildParentを継承した時にinheritedフックが呼ばれます。

  • Q39

    メソッドが追加された時に呼ばれるフックメソッドはどれですか?

    ANSWER
    method_added
    クリックして解説を表示
    EXPLANATION

    method_addedはメソッドが定義された時に呼ばれます。

  • Q40

    DSL(ドメイン固有言語)とは何ですか?

    ANSWER
    特定の問題領域に特化した言語
    クリックして解説を表示
    EXPLANATION

    DSLは特定の問題領域に特化した、読みやすい記法を持つ言語です。

STAGE 5
4150問目 • 10
  • Q41

    RubyでDSLを実現するために使われる技法はどれですか?

    ANSWER
    instance_evalとブロック
    クリックして解説を表示
    EXPLANATION

    instance_evalとブロックを組み合わせてDSLを実現することが多いです。

  • Q42

    次のコードはどのようなDSLパターンですか?

    Person.new do |p|
      p.name "Alice"
      p.age 30
    end
    ANSWER
    ビルダーパターン
    クリックして解説を表示
    EXPLANATION

    ブロック引数を使ったビルダーパターンのDSLです。

  • Q43

    Gemとは何ですか?

    ANSWER
    Rubyのパッケージ(ライブラリ)
    クリックして解説を表示
    EXPLANATION

    GemはRubyのパッケージ管理システムで配布されるライブラリです。

  • Q44

    Gemをインストールするコマンドはどれですか?

    ANSWER
    gem install
    クリックして解説を表示
    EXPLANATION

    gem installコマンドでGemをインストールします。

  • Q45

    Bundlerの役割は何ですか?

    ANSWER
    Gemの依存関係を管理する
    クリックして解説を表示
    EXPLANATION

    BundlerはGemの依存関係を管理し、プロジェクトで使用するGemを統一します。

  • Q46

    Gemfileの役割は何ですか?

    ANSWER
    プロジェクトで使用するGemを定義する
    クリックして解説を表示
    EXPLANATION

    Gemfileはプロジェクトで使用するGemとそのバージョンを定義するファイルです。

  • Q47

    Gemfile.lockの役割は何ですか?

    ANSWER
    インストールされたGemの正確なバージョンを記録する
    クリックして解説を表示
    EXPLANATION

    Gemfile.lockはインストールされたGemの正確なバージョンを記録します。

  • Q48

    bundle installコマンドの役割は何ですか?

    ANSWER
    Gemfileに記載されたGemをインストールする
    クリックして解説を表示
    EXPLANATION

    bundle installはGemfileに記載されたGemをインストールします。

  • Q49

    Gemfileでバージョンを指定する記法~> 2.0の意味は何ですか?

    ANSWER
    2.0以上3.0未満
    クリックして解説を表示
    EXPLANATION

    ~> 2.0は2.0以上3.0未満のバージョンを許可します(pessimistic constraint)。

  • Q50

    自作のGemを作成するためのコマンドはどれですか?

    ANSWER
    bundle gem
    クリックして解説を表示
    EXPLANATION

    bundle gemコマンドで新しいGemのひな形を作成できます。

STAGE 6
5160問目 • 10
  • Q51

    RubyのテストフレームワークRSpecで、テストケースを定義するメソッドはどれですか?

    ANSWER
    it
    クリックして解説を表示
    EXPLANATION

    itメソッドで個々のテストケース(example)を定義します。

  • Q52

    RSpecでテストをグループ化するメソッドはどれですか?

    ANSWER
    describe
    クリックして解説を表示
    EXPLANATION

    describeまたはcontextでテストをグループ化します。

  • Q53

    次のRSpecコードで、テストは成功しますか?

    describe "Math" do
      it "adds numbers" do
        expect(2 + 2).to eq(4)
      end
    end
    ANSWER
    成功する
    クリックして解説を表示
    EXPLANATION

    2 + 2は4なので、eq(4)の期待値と一致し、テストは成功します。

  • Q54

    RSpecでbeforeブロックの役割は何ですか?

    ANSWER
    各テストの前に実行されるセットアップ処理
    クリックして解説を表示
    EXPLANATION

    beforeは各テストの前に実行されるセットアップ処理を定義します。

  • Q55

    RSpecでletの役割は何ですか?

    ANSWER
    遅延評価されるヘルパーメソッドを定義する
    クリックして解説を表示
    EXPLANATION

    letは遅延評価されるヘルパーメソッドを定義します。

  • Q56

    letlet!の違いは何ですか?

    ANSWER
    let!は即座に評価される
    クリックして解説を表示
    EXPLANATION

    let!は即座に評価され、letは最初に使われた時に評価されます。

  • Q57

    RSpecでモックオブジェクトを作成するメソッドはどれですか?

    ANSWER
    double
    クリックして解説を表示
    EXPLANATION

    doubleでモックオブジェクトを作成します。

  • Q58

    RSpecでメソッドの呼び出しを検証するマッチャはどれですか?

    ANSWER
    receive
    クリックして解説を表示
    EXPLANATION

    receiveでメソッドの呼び出しを検証します。

  • Q59

    Minitestで、テストクラスが継承すべきクラスはどれですか?

    ANSWER
    Minitest::Test
    クリックして解説を表示
    EXPLANATION

    Minitest::Testを継承してテストクラスを作成します。

  • Q60

    Minitestでテストメソッドの命名規則は何ですか?

    ANSWER
    test_で始める
    クリックして解説を表示
    EXPLANATION

    テストメソッドはtest_で始める必要があります。

STAGE 7
6170問目 • 10
  • Q61

    Minitestで値が等しいことを検証するメソッドはどれですか?

    ANSWER
    assert_equal
    クリックして解説を表示
    EXPLANATION

    assert_equalで2つの値が等しいことを検証します。

  • Q62

    Rubyで並行処理を行うクラスはどれですか?

    ANSWER
    Thread
    クリックして解説を表示
    EXPLANATION

    Threadクラスで並行処理(スレッド)を実現します。

  • Q63

    新しいスレッドを作成する方法はどれですか?

    ANSWER
    Thread.new { ... }
    クリックして解説を表示
    EXPLANATION

    Thread.newで新しいスレッドを作成し、ブロック内のコードを並行実行します。

  • Q64

    スレッドの終了を待つメソッドはどれですか?

    ANSWER
    join
    クリックして解説を表示
    EXPLANATION

    joinメソッドでスレッドの終了を待ちます。

  • Q65

    次のコードの説明として正しいものはどれですか?

    threads = []
    3.times do |i|
      threads << Thread.new { puts i }
    end
    threads.each(&:join)
    ANSWER
    3つのスレッドを作成し、全ての終了を待つ
    クリックして解説を表示
    EXPLANATION

    3つのスレッドを作成し、全てのスレッドの終了を待ちます。

  • Q66

    スレッド間でデータを安全に共有するためのクラスはどれですか?

    ANSWER
    Mutex
    クリックして解説を表示
    EXPLANATION

    Mutex(ミューテックス)でスレッド間の排他制御を行います。

  • Q67

    Mutexのsynchronizeメソッドの役割は何ですか?

    ANSWER
    ブロック内のコードを排他的に実行する
    クリックして解説を表示
    EXPLANATION

    synchronizeはブロック内のコードを排他的に実行します。

  • Q68

    RubyのGIL(Global Interpreter Lock)とは何ですか?

    ANSWER
    同時に1つのスレッドしかRubyコードを実行できない制約
    クリックして解説を表示
    EXPLANATION

    GILは同時に1つのスレッドしかRubyコードを実行できない制約です。

  • Q69

    Fiberとは何ですか?

    ANSWER
    軽量な協調的マルチタスクの仕組み
    クリックして解説を表示
    EXPLANATION

    Fiberは軽量な協調的マルチタスクを実現する仕組みです。

  • Q70

    FiberとThreadの違いは何ですか?

    ANSWER
    Fiberは協調的、Threadはプリエンプティブ
    クリックして解説を表示
    EXPLANATION

    Fiberは明示的に制御を渡す協調的なマルチタスクで、Threadはプリエンプティブです。

STAGE 8
7180問目 • 10
  • Q71

    Queueクラスの役割は何ですか?

    ANSWER
    スレッドセーフなFIFOキュー
    クリックして解説を表示
    EXPLANATION

    QueueはスレッドセーフなFIFOキューを提供します。

  • Q72

    Ruby on Railsとは何ですか?

    ANSWER
    Webアプリケーションフレームワーク
    クリックして解説を表示
    EXPLANATION

    Ruby on RailsはRubyで書かれたWebアプリケーションフレームワークです。

  • Q73

    RailsのMVCアーキテクチャで、Mは何を表しますか?

    ANSWER
    Model
    クリックして解説を表示
    EXPLANATION

    MはModel(モデル)で、データとビジネスロジックを担当します。

  • Q74

    RailsのActive Recordパターンとは何ですか?

    ANSWER
    データベースのテーブルをオブジェクトとして扱うORMパターン
    クリックして解説を表示
    EXPLANATION

    Active Recordはデータベースのテーブルをオブジェクトとして扱うORMパターンです。

  • Q75

    Railsでデータベースのスキーマを変更するファイルは何と呼ばれますか?

    ANSWER
    マイグレーションファイル
    クリックして解説を表示
    EXPLANATION

    マイグレーションファイルでデータベースのスキーマ変更を管理します。

  • Q76

    Railsの「Convention over Configuration」とは何ですか?

    ANSWER
    規約に従うことで設定を最小限にする設計思想
    クリックして解説を表示
    EXPLANATION

    規約に従うことで設定を最小限にする設計思想です。

  • Q77

    Railsでルーティングを定義するファイルはどれですか?

    ANSWER
    config/routes.rb
    クリックして解説を表示
    EXPLANATION

    config/routes.rbでURLとコントローラーアクションのマッピングを定義します。

  • Q78

    RailsでRESTfulなルーティングを定義するメソッドはどれですか?

    ANSWER
    resources
    クリックして解説を表示
    EXPLANATION

    resourcesでRESTfulな7つのアクションのルーティングを自動生成します。

  • Q79

    Railsのコールバックbefore_actionの役割は何ですか?

    ANSWER
    アクション実行前に処理を行う
    クリックして解説を表示
    EXPLANATION

    before_actionはコントローラーのアクション実行前に処理を行います。

  • Q80

    Railsでパラメータのホワイトリストを定義する方法は何と呼ばれますか?

    ANSWER
    Strong Parameters
    クリックして解説を表示
    EXPLANATION

    Strong Parametersでマスアサインメント脆弱性を防ぎます。

STAGE 9
8190問目 • 10
  • Q81

    Active Recordでバリデーションを定義するメソッドはどれですか?

    ANSWER
    validates
    クリックして解説を表示
    EXPLANATION

    validatesメソッドでモデルのバリデーションルールを定義します。

  • Q82

    Active Recordのコールバックbefore_saveはいつ実行されますか?

    ANSWER
    createとupdateの両方で、保存前に実行
    クリックして解説を表示
    EXPLANATION

    before_saveはcreateとupdateの両方で、保存前に実行されます。

  • Q83

    Active Recordのhas_manybelongs_toの関係は何ですか?

    ANSWER
    1対多の関連
    クリックして解説を表示
    EXPLANATION

    1対多の関連を定義します。親がhas_many、子がbelongs_toを持ちます。

  • Q84

    Active Recordで多対多の関連を定義する方法はどれですか?

    ANSWER
    has_many :through
    クリックして解説を表示
    EXPLANATION

    has_many :throughまたはhas_and_belongs_to_manyで多対多を定義します。

  • Q85

    Active Recordのスコープとは何ですか?

    ANSWER
    再利用可能なクエリ条件を定義する仕組み
    クリックして解説を表示
    EXPLANATION

    スコープは再利用可能なクエリ条件を定義する仕組みです。

  • Q86

    次のActive Recordコードの意味は何ですか?

    scope :active, -> { where(active: true) }
    ANSWER
    active: trueでフィルタリングするスコープを定義
    クリックして解説を表示
    EXPLANATION

    activeというスコープを定義し、active: trueの条件でフィルタリングします。

  • Q87

    RailsのN+1問題とは何ですか?

    ANSWER
    関連データ取得時に不要なクエリが多発する問題
    クリックして解説を表示
    EXPLANATION

    関連データを取得する際に、1つのクエリで済むところをN+1回のクエリを発行してしまう問題です。

  • Q88

    N+1問題を解決するActive Recordのメソッドはどれですか?

    ANSWER
    includes
    クリックして解説を表示
    EXPLANATION

    includespreloadeager_loadでN+1問題を解決できます。

  • Q89

    Railsでバックグラウンドジョブを処理するフレームワークはどれですか?

    ANSWER
    Active Job
    クリックして解説を表示
    EXPLANATION

    Active JobはRailsの標準的なバックグラウンドジョブフレームワークです。

  • Q90

    Active Jobで使用できるキューアダプタはどれですか?

    ANSWER
    Sidekiq、Delayed Job、Resqueなど複数
    クリックして解説を表示
    EXPLANATION

    Sidekiq、Delayed Job、Resqueなどが使用できます。

STAGE 10
91100問目 • 10
  • Q91

    Railsでメール送信を行うクラスは何と呼ばれますか?

    ANSWER
    Action Mailer
    クリックして解説を表示
    EXPLANATION

    Action MailerでRailsアプリケーションからメールを送信します。

  • Q92

    RailsでWebSocketを扱う機能は何と呼ばれますか?

    ANSWER
    Action Cable
    クリックして解説を表示
    EXPLANATION

    Action CableでRailsアプリケーションにWebSocketを統合します。

  • Q93

    Railsのconcernとは何ですか?

    ANSWER
    共通機能をモジュールとして抽出する仕組み
    クリックして解説を表示
    EXPLANATION

    concernはモデルやコントローラーで共通の機能をモジュールとして抽出する仕組みです。

  • Q94

    Railsでファイルアップロードを扱う機能は何と呼ばれますか?

    ANSWER
    Active Storage
    クリックして解説を表示
    EXPLANATION

    Active StorageでRailsアプリケーションにファイルアップロード機能を追加します。

  • Q95

    Railsのcredentialsとは何ですか?

    ANSWER
    秘密情報を暗号化して管理する仕組み
    クリックして解説を表示
    EXPLANATION

    credentialsはAPIキーなどの秘密情報を暗号化して管理する仕組みです。

  • Q96

    Railsでテストデータを作成するためのファイルは何と呼ばれますか?

    ANSWER
    fixture
    クリックして解説を表示
    EXPLANATION

    fixtureまたはfactoryでテストデータを定義します。

  • Q97

    Factory Botの役割は何ですか?

    ANSWER
    テスト用のオブジェクトを簡単に作成するライブラリ
    クリックして解説を表示
    EXPLANATION

    Factory Botはテスト用のオブジェクトを簡単に作成するライブラリです。

  • Q98

    次のRubyコードは何を行っていますか?

    class MyClass
      class << self
        def class_method
          "class method"
        end
      end
    end
    ANSWER
    特異クラスでクラスメソッドを定義
    クリックして解説を表示
    EXPLANATION

    class << selfは特異クラスを開き、クラスメソッドを定義します。

  • Q99

    特異メソッドとは何ですか?

    ANSWER
    特定のオブジェクトにのみ定義されるメソッド
    クリックして解説を表示
    EXPLANATION

    特異メソッドは特定のオブジェクトにのみ定義されるメソッドです。

  • Q100

    次のコードの出力は何ですか?

    obj = "hello"
    def obj.shout
      upcase + "!"
    end
    puts obj.shout
    ANSWER
    HELLO!
    クリックして解説を表示
    EXPLANATION

    objオブジェクトにのみshoutメソッドを定義し、"HELLO!"を返します。