Java中抽象类和接口的异同

相同处:

1. 都不可以被实例化。
2. 都包含抽象方法,实现接口或继承抽象类的普通子类必须实现这些抽象方法。

不同处:

1. 一个普通类可以实现多个接口,但是只能继承一个抽象类。
2. 抽象类中可以有普通方法和静态方法,接口中只能有抽象方法。
3. 抽象类中可以有普通变量、静态变量和静态常量,接口中只能有静态常量。
4. 抽象类中可以有构造器,接口中不能有构造器。
5. 抽象类可以有初始化块,接口中不存在初始化块。

posted @ 2013-04-05 22:43  robin·张  阅读(210)  评论(0编辑  收藏  举报