作者zero00072 (叮钉无产者)
看板Ruby
标题[问题] super真的不能呼叫其他方法吗?
时间Sun Dec 7 01:04:12 2008
环境:
Ruby 1.8.7
状况:
我们老师在上「物件导向程式设计」时,选了Java来当他的教学语言
(我偏要跟他唱反调,用Ruby来写……,还附上Java的程式码,免得被当),
但现在,我们老师教到继承,Java里有super()的方法可以用,如下:
class A {
public void m1() {
System.out.println("A's m1.");
}
}
class B extends A {
public void m1() {
System.out.println("B's m1.");
}
public void m2() {
super.m1(); //这会出现「A's m1.」。
}
}
打成Ruby後变成:
class A
def m1
puts "A's m1."
end
end
class B < A
def m1
puts "B's m1."
end
def m2
???? # 用super会找不到父类别同名方法。
end
end
????不知道打什麽,我看了Ruby Doc,只找到呼叫父类别同名方法的super,
有没有办法像Java那样呼叫其他的方法的super?还是这是下一版Ruby的开发目标之一?
--
叮钉无产者谨启
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.131.64.48