質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

解決済

<Ruby>クラス宣言内、及びメソッドの宣言外からのメソッド呼び出しの利用について

NK321
NK321

総合スコア1

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

2回答

0リアクション

1クリップ

198閲覧

投稿2022/09/26 17:11

前提

例えばJavaではタイトルのような、"クラス内、かつメソッド宣言外"から直接メソッドを呼ぶような式はエラーになるかと思います。
<例1>

Java

public class Main { public static void main(String[] args) { System.out.println("Hello world!"); } public static void log(String message) { System.out.println(message); } // エラーになる log("call from in class, and from outside method declaration"); }

しかし、Rubyではこのようなことが可能かと思います。

Ruby

class SampleController < ActionController::Base def log(message) puts message end # エラーにならない log("call from in class, and from outside method declaration") end

確認したいこと

以下ご教授いただければと思います

  1. Rubyの場合、親クラスで上記のような処理が書かれていた場合、継承された時に処理が実行される為、必ず処理させたい内容を記載し継承させる、という用途で良いのでしょうか?
  2. この書き方は何か名称があったりしますでしょうか?

以上、よろしくお願いいたします。

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

NK321

2022/10/01 13:28

お二方とも参考になりました、ありがとうございました。 迷いましたがサンプルコードを記載して、よりわかりやすかった方をBAとさせていただきました。

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。