weixin_42298810
2008-12-05 10:17
浏览 1.1k
已采纳

Java里面如何同时继承两个类?

有什么多少种方面可以实现,最简单的是那种?
谢谢大家咯

[b]问题补充:[/b]
恩,现在我有两个类要实现,一个是SPRING的类,另一个是JAVA.UTIL.*里面的类,我又不能改源码,现在最好的方式是怎么现实?谢谢了咯
[b]问题补充:[/b]
我也是刚刚学JAVA,大家有没有好的例子给我看一下嘛
[b]问题补充:[/b]
现在的问题是:那两个类已经是存在的了,如果不存在当然好速了。。。。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

14条回答 默认 最新

  • hlxiong 2008-12-05 14:34
    已采纳

    你确定要继承JDK里的类?很多情况下包装使用就差不多了,如firefly.li所说。
    除了通过隔代继承,还可以通过内部类来实现多继承。如类A需要同时继承类B和C,则可以如下所示:
    class A extends B{
    class InnerA extends C{
    //在这里扩充类C
    }
    }
    其实就是通过一个内部类InnerA来实现C,这也是Java中实现多继承的一种方式。
    当然通过定义接口也是一种方法。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • hunterli0408 2008-12-05 10:40

    Java中不允许多继承,不过可以通过其他方式实现:
    1.假设有A,B,C三个类,你可以让B继承A,然后让C再继承B,这样C就继承了A,B。
    2.java中可以实现多个接口,所以继承一个类,然后实现多个接口。

    评论
    解决 无用
    打赏 举报
  • iteye_5745 2008-12-05 10:55

    java的api都设计的很好,你可以继承SPRING的类(假设为A),找到你要继承的另一个类(JAVA.UTIL.*里面的类,假设为B)的接口,implement it,找到B的源码,copy一下方法,你就得到个你要的新类。

    评论
    解决 无用
    打赏 举报
  • iteye_5694 2008-12-05 11:01

    你要实现里的方法,不需要继承。直接重写就可以

    评论
    解决 无用
    打赏 举报
  • hunterli0408 2008-12-05 11:20

    写个包装类,把spring的类A和java.util里的类B作为他的私有属性,然后定义需要的方法,方法的内部根据具体情况调用A或B的方法。
    如果lz的类作为工具类使用,并且方法少的话,可以这么做。

    评论
    解决 无用
    打赏 举报
  • langhua9527 2008-12-05 13:02

    支持下,虽然不会。。。。

    评论
    解决 无用
    打赏 举报
  • iteye_19016 2008-12-05 13:05

    Java一次只能继承一个类!
    所谓的多继承就是。

    孙子 继承 爸爸 ,爸爸再 继承 爷爷。

    这样孙子就有了 爸爸 与 爷爷 所有的技能特性:

    代码如下;

    class yy{

    }

    class bb extends yy{

    }

    class sz extends bb{

    }

    评论
    解决 无用
    打赏 举报
  • langhua9527 2008-12-05 17:20

    呵呵,我觉得还是有很多办法的

    评论
    解决 无用
    打赏 举报
  • NanguoCoffee 2008-12-05 20:58

    写个包装类,把spring的类A和java.util里的类B作为他的私有属性,然后定义需要的方法,方法的内部根据具体情况调用A或B的方法。
    如果lz的类作为工具类使用,并且方法少的话,可以这么做。
    firefly.li (初级程序员) 2008-12-05

    这个方法最合理。

    评论
    解决 无用
    打赏 举报
  • iteye_5745 2008-12-06 08:58

    有如线程,你可以继承Thread类,也可以实现Runnable接口,重写run方法。当你已经继承了另一个类时,就只能用第二种方法,java不允许多继承。java api中的类大部分都可以找到接口的。

    评论
    解决 无用
    打赏 举报
  • 小胖451 2008-12-06 17:26

    我有一种方法你不妨试一下
    已知 有A,B 两个类已经实现,并且它们之间没有关系
    你可以这样做
    class C extends A{
    //这里有你自己写的属性和方
    //这里声明一个内部类
    class InnerClass extends B{
    //你自己的一些东东
    }
    }
    你如果要使用继承B类的一些属性或方法
    你可以通过声明A得对象,
    在通过声明InnerClass得对象 来访问B中一些属性或方法

    评论
    解决 无用
    打赏 举报
  • hkliya 2008-12-06 22:20

    假如有A,B兩個類,你想用C类来继承
    那你可以用C类继承A类,把B类作为C类的一个属性
    或把A类和B类都作为C类的属性

    评论
    解决 无用
    打赏 举报
  • 微笑待你一生! 2008-12-08 10:25

    写个包装类,把spring的类A和java.util里的类B作为他的私有属性,然后定义需要的方法,方法的内部根据具体情况调用A或B的方法。
    如果lz的类作为工具类使用,并且方法少的话,可以这么做。
    firefly.li (初级程序员) 2008-12-05

    正解!!

    评论
    解决 无用
    打赏 举报
  • davidchjr 2008-12-10 09:40

    尽量用包含,少用继承吧。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题