{category}

Ruby - クラスとオブジェクト

new

ニュー(オブジェクト指向プログラミング

意味 新しいオブジェクトを生成


newとは?

newは、クラスから新しいオブジェクト(インスタンス)を生成するためのメソッドです。クラス名の後ろに.newを付けて呼び出すことで、そのクラスの新しいインスタンスが作られます。

newの具体的な使い方

基本的なオブジェクト生成

class Person
  attr_reader :name, :age

  def initialize(name, age)
    @name = name
    @age = age
  end
end

person = Person.new('Alice', 25)
puts "#{person.name}は#{person.age}歳です。"

👇出力結果

Aliceは25歳です。

この例では、Personクラスの新しいインスタンスを作成しています。'Alice'と25という引数を渡して初期化し、作成されたpersonオブジェクトのnameとageを表示しています。

引数なしのnewの使用

class SimpleClass
end

obj = SimpleClass.new
puts "クラス名: #{obj.class}"

👇出力結果

クラス名: SimpleClass

引数を取らないクラスの場合、newメソッドを引数なしで呼び出してオブジェクトを生成できます。この例では、空のSimpleClassからオブジェクトを生成しています。

newに関するよくある質問

Q. newメソッドの役割は何ですか?
A. newメソッドは、クラスから新しいオブジェクト(インスタンス)を生成するために使用されます。クラス名の後ろに.newを付けて呼び出すことで、そのクラスの新しいインスタンスが作られます。
Q. newメソッドと初期化の関係は?
A. newメソッドを呼び出すと、新しいオブジェクトが作成され、そのオブジェクトのinitializeメソッド(定義されている場合)が自動的に呼び出されます。initializeメソッドでオブジェクトの初期状態を設定できます。
Q. 引数なしでnewを呼び出せますか?
A. はい、クラスにinitializeメソッドが定義されていない場合や、initializeメソッドが引数を取らない場合は、引数なしでnewを呼び出すことができます。例:Object.new

newが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Rubyのnewやancestors、public、super、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Rubyを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Rubyはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

ancestors

クラスの継承関係を取得

種類: オブジェクトの性質

public

どこからでもアクセス可能

種類: アクセス制御

super

親クラスのメソッドを呼び出す

種類: 継承

Fiber.new

新しいFiberオブジェクトを作成

種類: ファイバー

[]

Procオブジェクトを実行する別の方法

種類: Procオブジェクト