# 【勉強メモ】Ruby01
目次
# はじめに
最近Rubyを使う必要性に迫られているので、少しづつ勉強している。
単なる勉強メモだが残しておく
# メモ
- シンボル
:name
のような書き方- ハッシュのキーとして使われる
- キーがシンボルのハッシュの書き方の種類
- name => "名前"
- :name => "名前"
- name: "名前"
- 存在しないkeyを叩いた時
- nil
- 配列操作
- 配列.each do |要素|
- メソッド
- defで宣言
- 引数の渡し方はjsとあまり変わらない
- 真偽値を返すメソッドはメソッドの末尾に
?
をつける慣習がある- なぜだろう??
- キーワード引数を書く場合は、定義の時にも渡す時にも変数名の後に
:
を記載する
- クラスとインスタンス
- インスタンス変数の定義は
attr_accessor
- 例
attr_accessor :name
- インスタンスを作る際にjsと逆で
class名.new
- インスタンスメソッド内でインスタンス変数を呼ぶ場合は
self.インスタンス変数
initialize
で初期化を行う。オブジェクト作成時に自動的に呼ばれる
- インスタンス変数の定義は
- コンソール経由での入力を受け取るには
gets.chomp
- 数値に変換するのに
gets.chomp.to_i
- to_integer??
- 数値に変換するのに
- クラスの継承
class 子クラス < 親クラス
- 小クラスの中で同名のメソッドを書いてオーバーライド
super
で親クラスの同名メソッドを呼び出しクラス.メソッド
= クラスメソッドdef クラス名.メソッド名
で定義。インスタンス名との違いはクラス名を書くか否か- インスタンスソッドは実体化(
new
)してからじゃないと使えない