*ブログに戻る →ここ です。


Rubyの学習 free195
プライベートのメソットと、パブリックなメソッドの設定

↓Rubyのプログラムを実行すると以下のように表示される。

C:\RubyTest>ruby test_sada15-1.rb
ペダルを踏みました
速度は40Kmです
ブレーキを握りました

ペダルを踏みました
速度は480Kmです
ブレーキを握りました


ペダルを踏みました
速度は20Kmです
ブレーキを握りました

ペダルを踏みました
速度は600Kmです
ブレーキを握りました

C:\RubyTest>




Tuesday,October,8,2013

プログラムの表示

=begin Tuesday,October,8,2013 ○値から謎の多いクラス名を調べてみる。 ルビーの値(オブジェクト)が所属するクラス Numeric (説明はfree171.html)[step]メソッドはNumericクラスである。 [step]メソッドは、任意に決めた浮動小数点の値を繰り返し足していく事ができるメソット。 Float (浮動小数点数) Integer (説明はfree170.html)[times][upto][downto]メソッドはIntegerクラス Numericのサブクラスでもある。 このメソッドは要素などの値の範囲を指定し、for句(演算子)と連動させる事で変数へ繰り返し値を名札 付けしながらブロック内のプログラムを実行させる。 Bignum (大きな整数) Fixnum (整数) Kernel [loop]メソッドはKernelクラスである。無限に繰り返しを行なう。(今回学習した) PHPでの値の型 string (文字句) integer (数字) double (小数点) free147.php ←ここで試した。 謎の多いクラスを調べる方法は下記、またの機会に別のページで試してみます。 #! ruby -Ku print("定近です。".class())←クラスを調べるには、これを使って調べます。 print("\n") #! ruby -Ku ← の「u」とは、UTF-8 のこと(文字化けを回避します)。 s or S Shift_JIS e or E EUC-JP u or U UTF-8 n or N NONE(ASCII) 「require」メソッドで「kconv」ライブラリを読みんで、モジュール関数「Kconv.tosjis()」 を使用することにより表示の時に Shift_JIS に変換している。(メソットというからにはクラスがあるんでしょうね) まだきちんと理解できていません。 保存するときは、文字コードセットを UTF-8 にすること。 サクラエディタを使用しています。 コマンドプロンプトを開きます。 C:Documents and Settings\User> C:Documents and Settings\User>cd C:\rubytest と入力する。「cd」カレントディレクトリの略。現在のフォルダという意味(フォルダは任意の名前で自作した) C:\RubyTest>ruby test_sada15-1.rb そして保存したファイル名を打ち込む。 =end #コメントテスト、ファイル名test_sada15-1テキスト #--------------------------------------------------- #! ruby -Ku require "kconv" =begin 「public」 「private」 明示的に指定するには「public :メソッド名」 明示的に指定するには「private :メソッド名」 メモ 「initialize」メソッドは常に「private」メソッドとして定義される。 クラスのオブジェクトとしては実行不可。 初っぱなに実行するメソッドでしたよね =end class KittaChassis def _kittaAccele(_kittaka=5) #値が無い場合は1かな print("ペダルを踏みました\n") print("速度は", _kittakaSpeed(_kittaka), "Kmです\n") #プライベート設定のオブジェクト実行待ち end public :_kittaAccele #○明示的にパブリックを指定した、○引数はいらないんだね def _kittaBrake print("ブレーキを握りました\n") end public :_kittaBrake def _kittakaSpeed(_kittaka) #後だしだね return _kittaka * 8 end private :_kittakaSpeed #○明示的にプライベートと指定した end _kitta = KittaChassis.new _kitta._kittaAccele() #デフォルト出力をテストするため引数を空で実行してみる _kitta._kittaBrake print("\n") _kitta._kittaAccele(60) _kitta._kittaBrake print("\n\n") #--------------------------------------- =begin プライベートをまとめて設定する 「private」の後はすべてプライベート 「public」の後はすべてパブリック =end class SadaChassis private def _sadaSpeed(_sadachika) #前出し return _sadachika * 10 end public def _sadaAccele(_sadachika=2) #値が無い場合は2 print("ペダルを踏みました\n") print("速度は", _sadaSpeed(_sadachika), "Kmです\n") #プライベート設定のオブジェクト実行待ち end def _sadaBrake print("ブレーキを握りました\n") end end _sada = SadaChassis.new _sada._sadaAccele() #デフォルト出力をテストするため引数を空で実行してみる _sada._sadaBrake print("\n") _sada._sadaAccele(60) _sada._sadaBrake


* 参考にしたサイトは→ こちら です。

これは赤色の文字例です。

これは青色の文字例です。