A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 贾永长 中级黑马   /  2013-7-3 21:01  /  1358 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杜光 于 2013-7-3 21:43 编辑

C中想用A、B类中的方法咋办?(老师说不能多继承)
代码如下:
  1. class A
  2. {
  3.         void show()
  4.         {
  5.                 System.out.println("a");
  6.         }
  7. }
  8. class B
  9. {
  10.         void show()
  11.         {
  12.                 System.out.println("b");
  13.         }
  14. }
  15. class C //C想用到A、B类中的方法咋办?
  16. {}
复制代码

评分

参与人数 1黑马币 +1 收起 理由
杨兴庭 + 1

查看全部评分

10 个回复

倒序浏览
在C中创建A和B的对象。。。。。“对象.方法”的形式 调用

评分

参与人数 1黑马币 +5 收起 理由
杜光 + 5 每天提问并回答问题,是对知识的复习和积累.

查看全部评分

回复 使用道具 举报
规范,只能单继承,你还非要多继承
法律规定只能娶一个,你非要娶几个,是可以,但是违法了
楼上的回答已经解决了你的问题

评分

参与人数 1黑马币 +5 收起 理由
杜光 + 5 每天提问并回答问题,是对知识的复习和积累.

查看全部评分

回复 使用道具 举报
晕AB中的代码可以改么?可以的话让B继承A~~.
回复 使用道具 举报
你给的示例中AB含有的方法是相同的   我感觉是只能建立相应的对象,然后用对象调用了
回复 使用道具 举报
最简单的方法就是
C a = new A();
a.show();
C b = new B();
b.show();
回复 使用道具 举报
在我写完代码之前已有人发贴了,我就用代码表达下吧
  1. class A
  2. {
  3.         void show()
  4.         {
  5.                 System.out.println("a");
  6.         }
  7. }

  8. class B
  9. {
  10.         void show()
  11.         {
  12.                 System.out.println("b");
  13.         }
  14. }

  15. public class C
  16. {       
  17.         private A a = new A();
  18.         private B b = new B();
  19.        
  20.         public void show()
  21.         {
  22.                 a.show();
  23.                 b.show();
  24.         }
  25.         public static void main(String[] args)
  26.         {
  27.                 C c = new C();
  28.                 c.show();
  29.                
  30.         }
  31. }
复制代码

评分

参与人数 1黑马币 +5 收起 理由
杜光 + 5 每天提问并回答问题,是对知识的复习和积累.

查看全部评分

回复 使用道具 举报
可以用反射的方法。就拿A来说。
//在C中用反射获得A的字节码并创建一个实例对象。
A a = A.class.newInstance();
//获得A中的方法。
Method method = A.class.getMethod("show");
//调用方法。
//method.invoke(a);

评分

参与人数 1黑马币 +1 收起 理由
杨兴庭 + 1

查看全部评分

回复 使用道具 举报
杨兴庭 发表于 2013-7-3 21:09
在C中创建A和B的对象。。。。。“对象.方法”的形式 调用

嗯,这样啊原来,对象.方法 调用 不错!谢啦:handshake
回复 使用道具 举报
王洪波 发表于 2013-7-3 21:27
在我写完代码之前已有人发贴了,我就用代码表达下吧

恩恩,代码写的好详细!赶紧保存下来,thank油了:handshake
回复 使用道具 举报
王靖远 发表于 2013-7-3 21:51
可以用反射的方法。就拿A来说。
//在C中用反射获得A的字节码并创建一个实例对象。
A a = A.class.newInstan ...

这种方法还不知道嘞!高手啊!赶紧保存下来!thank油了!:handshake:handshake
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马