黑马程序员技术交流社区

标题: 抽象类继承接口 [打印本页]

作者: 唐兴旺    时间: 2012-3-1 00:08
标题: 抽象类继承接口
在此请教下,普通类继承接口,要实现接口中的全部方法,那抽象类继承接口,也需要实现接口中的所有方法吗
作者: 吕猛    时间: 2012-3-1 09:20
本帖最后由 吕猛 于 2012-3-1 10:02 编辑

抽象类继承接口后,可以不全部实现接口的方法。因为抽象类无论如何都不能实例化。但是,需要被子类实现的时候,必须全部覆盖这个抽象类和接口中的所有抽象方法。
  1. interface Person
  2. {
  3.         public abstract void sleep();
  4.         public abstract void hahah();       
  5. }

  6. abstract class Student implements Person
  7. {
  8.         abstract void study();       
  9. }

  10. class Bachelor extends Student
  11. {
  12.         public void sleep()
  13.         {
  14.                 System.out.println("Hello sleep!");
  15.         }
  16.         public void hahah()
  17.         {
  18.                 System.out.println("Hello hahah!");
  19.         }
  20.         public void study()
  21.         {
  22.                 System.out.println("Hello study!");
  23.         }
  24. }

  25. class Demo
  26. {
  27.         public static void main(String[] args)
  28.         {
  29.                 Bachelor t = new Bachelor();
  30.                 t.sleep();
  31.                 t.hahah();
  32.                 t.study();
  33.         }
  34. }
复制代码
运行结果:

Hello sleep!
Hello hahah!
Hello study!

作者: 王杰    时间: 2012-3-1 19:47
抽象类继承接口不用全部方法都实现。但是如果是这个抽象类的子类就得全部都实现。上面那个兄弟说的很好!
作者: 泮和顺    时间: 2012-3-2 19:59
接口本身就是一种抽象类。更为严格的抽象类




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2