在进行抽象类和接口区别之前,我们先要明白什么是抽象类,什么是接口。
一、什么是抽象类?
关于这个问题之前,我们必须要明白子类继承超类的关系,子类会继承超类(父类)的所有方法,甚至可以重写父类的方法。那么有这个基础就好解释抽象类了。
抽象类是一个只有超类或者用作子类的超类拥有的特性。这样可以很直白的说明了,只有父亲拥有抽象类,子类不能拥有,所以这就限制了父类抽象化了不能被实例化,而子类可以实例化对象。
由如图所示
如果子类继承了抽象类的父类,只有子类可以进行实例化,同时实例化后的对象可以调用它实现父类的方法。可以总结:父类使用抽象abstract关键字来修饰,抽象方法必须写在抽象类里,且继承该父类的子类必须实现父类的方法(方法重写)。
//抽象父类
public abstract class Parent {
private int sum;
public abstract void sum_data();//抽象方法,没有实现
}
//继承抽象类的子类
public class children extends Parent{
public static void main(String[] args) {
// TODO Auto-generated method stu