查看: 1252|回复: 3

[已经解决] 请问一个子类可不可以定义双重父类?

  [复制链接]
头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-8-27
回帖
18
发表于 2009-8-29 15:13:32 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-10-16
回帖
408
发表于 2009-8-29 15:27:29 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

真实之终章

梦石
0
星屑
60
在线时间
48 小时
注册时间
2008-8-7
回帖
279
发表于 2009-8-29 15:36:32 | 显示全部楼层
Ruby不支持多重继承,一级级继承即可。
(另外也不支持多态)
玫瑰绽放,彼岸流殇。
回复

使用道具 举报

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
回帖
1912
发表于 2009-8-29 19:15:14 | 显示全部楼层
Ruby 本身没有多继承,但需要多继承才能实现的功能可以通过包含多个模块来实现,就像 Java 类可以实现多个接口一样:
  1. class A
  2. {
  3. }

  4. interface B
  5. {
  6. }

  7. public class Test extends A implements B
  8. {
  9.         public static void main(String[] args)
  10.         {
  11.                 Test t = new Test();
  12.                 System.out.println(t instanceof A);
  13.                 System.out.println(t instanceof B);
  14.         }
  15. }
复制代码
Ruby:
  1. class A
  2. end

  3. module B
  4. end

  5. class C < A
  6.   include B
  7. end

  8. c = C.new
  9. p c.is_a?(A)
  10. p c.is_a?(B)
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部