学生向けプログラミング入門 | 無料

学生向けにプログラミングを無料で解説。Java、C++、Ruby、PHP、データベース、Ruby on Rails, Python, Django

Ruby | 16 | クラス

↓↓クリックして頂けると励みになります。



15 | インスタンス変数】 << 【ホーム】 >> 【17 | 日付、時間、曜日の利用

クラスの定義とメソッドの使用
クラスの定義とメソッドの使用


Rubyにおける「クラス」とは、オブジェクト指向プログラミングにおいて、オブジェクトの設計図やテンプレートとなるものです。
クラスは、共通の特性や振る舞いを持つオブジェクトの集合を定義します。

具体的には、クラスはそのオブジェクトが持つ属性(インスタンス変数)や振る舞い(メソッド)を定義します。
クラスから生成された各インスタンスは、それぞれ独自の状態を持ち、同じクラスに定義されたメソッドを共有します。

要するに、Rubyのクラスはオブジェクトの設計図であり、そのクラスから生成されたインスタンスはその設計図に基づいて振る舞いや状態を持ちます。


Visual Studio Codeで以下の2つのプログラムを作ってみましょう。


新規作成1 【input.rb】

# input.rb

class Input
	
	def readString()

		str = nil
		begin			
			str = gets
		rescue
			puts 'エラー'
		end
		return str
	end

	def readInt()
		i = 0
		begin
			str = readString()
			i = str.to_i
		rescue
			puts 'エラー'
		end
		return i
	end
end



新規作成2 【inputtest.rb】

# inputtest.rb

require './input.rb'

class Inputtest

	# クラスのインスタンスを生成
	n = Input.new()

	puts '名前を入力してください:-> '

	# メソッドの呼び出し	
	name = n.readString()
	puts name

	puts '数字を入力してください:-> '


	# メソッドの呼び出し
	i = n.readInt()
	puts i
end



クラスの定義は次のように行います。

class クラス名
end

クラス名はの最初の1文字目は必ず大文字のアルファベットにします。
@で始まるインスタンス変数はクラス内でのみ有効になります。


クラスのメソッドを利用するには、最初にクラスのインスタンスを生成します。

変数名 = クラス名.new()

生成したインスタンスを変数に格納し、それを使用してメソッドを呼び出します。

変数.メソッド()



実行結果は以下の通りになります。

~/Desktop/Programming/RB $ ruby inputtest.rb 

名前を入力してください:-> 
ギャンブラー
ギャンブラー
数字を入力してください:-> 
2
2



15 | インスタンス変数】 << 【ホーム】 >> 【17 | 日付、時間、曜日の利用





↓↓クリックして頂けると励みになります。