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

© rehan 中级黑马   /  2015-2-17 16:42  /  985 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

RT:内部类中可以实现多重继承?有点看不懂了,求大神解释。。。。。

1 个回复

正序浏览
  1. package lwj05;

  2. /*
  3. * 需求:使用内部类实现多继承操作       
  4. */
  5. public class MultiExtends {
  6.         public void runA(A a) {
  7.                 a.methodA();
  8.         }

  9.         public void runB(B b) {
  10.                 b.methodB();
  11.         }

  12.         public static void main(String[] args) {

  13.                 MultiExtends mul = new MultiExtends();
  14.                 mul.runA(new C());
  15.                 mul.runB(new C().getB());

  16.         }
  17. }

  18. abstract class A {// 需要被继承的A类
  19.         public abstract void methodA();
  20. }

  21. abstract class B {// 需要被继承的B类
  22.         public abstract void methodB();
  23. }

  24. class C extends A {

  25.         @Override
  26.         public void methodA() {
  27.                 System.out.println("methodA run...");
  28.         }

  29.         public B getB() {
  30.                 return new B() {// 使用匿名内部类实现获取B类的实例

  31.                         @Override
  32.                         public void methodB() {
  33.                                 System.out.println("methodB run...");
  34.                         }
  35.                 };
  36.         }
  37. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马