抽象类实现接口和非抽象类实现接口的区别:
以及抽象类实现接口的实际意义;
概述:
1,抽象类重实现接口的时候可以只重写接口中的部分方法;
2, 非抽象类实现接口的时候需要重写实现的接口中的全部方法;
代码块如下:
//自定义一个接口
public interface jiekou(){
public abstract void A();
public abstract void B();
public abstract void C();
}
//抽象类实现接口
abstract class CX implements jiekou{
public abstract void A() { };//可以选择重写的方法
}
//非抽象类实现接口
class FCX implements jiekou{
public abstract void A() { };
public abstract void B() { };
public abstract void C() { };//必须将接口中方法全部重写;
}
然后具体的应用时候会碰到这种需求,你只需要实现接口中的小部分方法,这时候就应该使用抽象类去实现接口,选择需要方法去重写,然后定义需要的类去继承这个抽象类,完成该方法的调用;这么用的原因“:因为如果直接实现接口那么必然会重写接口中的全部方法,导致代码冗余;
抽象类被非抽象类继承的时候非抽象类必然会重写抽象类中的所有抽象方法
class A extends CX{//普通类继承抽象类
public void A(){ };
}