アマグラミング

プログラミング初心者が勉強したことを復習とメモがてら書いているだけです。

(89)aliasとundef

既に存在するメソッドに別の名前を割り当てたい場合にaliasを使うこともある。

書き方としては

alias 割り当てたいメソッド名 元のメソッド名

もしくは

alias : 割り当てたいメソッド名 :元のメソッド名

シンボルを使ってこう書く

 

同じ機能を持つものを複数使う場合や既にあるメソッドの定義を

変更する時に元のメソッドを保存しておくことにも使える。

 

ちょっと書いてみる

 

class Persona4

 def chie

"あちょー"

end

end

 

class Persona5 < Persona4

alias hutaba chie

 

def chie

 

 "おじゃまするます"

end

end

 

persona = Persona5.new

p persona.hutaba

p persona.chie

 

実行すると

f:id:tiroru17:20170715024952p:plain

 

こんな感じに動く

 

undefは定義されたメソッドをなかったコトにしたい時に使う。

書き方としては

undef  メソッド名

undef  :メソッド名

シンボル使うとこんな感じ。

 

スーパークラスを継承するとき、いらないメソッドを

削除するなどの用途で使う。