ruby 同名方法

2021-09-26 09:52:00 字數 695 閱讀 5631

第一種情況

兩個版本的方法,其中乙個包含在類中,另一種包含在類的模組中。

module a

def say

puts "hello"

endend

class b

include a

def say

puts "hello evryone"

endend

b=b.new

b.say

輸出結果為 hello evryone

第二種情況

混合擁有同名方法的模組

module a

def say

puts 「my name is a」

endend

module b

def say

puts 「my name is b」

endend

class c

include a

include b

endc=c.new

c.say

輸出為 my name is b

第三種情況

包含乙個模組多次

以上面為例

class d

includ a

includ b

include a

end輸出結果為 my name is b

Ruby建立「關鍵字」同名方法別名的方法

begin和end是ruby的關鍵字,但是range中也有名稱為begin和end的例項方法。現在問題來了 怎麼建立它們的別名方法?如果用class range alias begin x begin end是不行的,ruby以為後面乙個gyjwwcbegin是某個語法塊的開頭啊 複製 如下 2.1...

java 父類子類繼承 同名變數 同名方法

無意中發現的這個有趣的問題。觀察下列 父類和子類中都定義有 string name變數,那最終繼承之後是不是只剩下1個name?還是父類子類的name互相不相干?通過賦值後,最後會輸出什麼?見如下 public class son extends parent public static void ...

ruby入門 方法

要注意引數,可變長度引數,和引數預設值 還有物件的特殊方法 class person def say1 word1,word2 puts word1 word2 end variable var def say2 word puts word end default var def say3 wor...