抽象类
- 抽象类只能单继承。即只能继承一个
- 子类必须重写父类中所有未实现的方法,也可以重写父类中的实现方法。或者字类也为抽象类
- 抽象类中可以有实现和未实现的方法,未实现的为抽象方法。
- 可以有构造方法
接口
- 接口可以多实现。即可以实现多个不同的接口
- 接口中的方法只声明,不实现。
- 实现接口类的类,必须实现接口类中所有方法。
- 不能有构造方法
public class TestAi extends Ab implements InterfaceTest {
void test(){super.abM2();}
//重写 可重写可不重写,因为父类中已经实现了
@Override
void abM1(){}
//必须重写,因为父类中只声明未实现
@Override
void m3() {}
/**
* 下面的两个方法都为接口类的,必须实现!
*/
public void m1() {}
public void m2() {}
}
public abstract class Ab {
void abM1(){}
void abM2(){
}
abstract void m3();
}
public interface InterfaceTest {
void m1();
void m2();
}