抽象类实现接口

由普通的类来实现接口,必须将接口所有抽象方法重写

由抽象类来实现接口,则接口的方法可根据需要选择是否重写。

继承实现接口的抽象类时,子类必须重写抽象类未实现的方法。

  接口类:

package com.skd.abstractinterface;

/**
 * @Description
 * @Author virgosnail
 * @Date 2018/12/12 21:22
 */

public interface MyInterface {

    void  say();

    void speak();

    void  hi();
}

  抽象类:

package com.skd.abstractinterface;

/**
 * @Description
 * @Author virgosnail
 * @Date 2018/12/12 21:23
 */

public abstract class MyAbstract implements MyInterface{
    /**
     * 实现接口的抽象类可以选择重写接口方法也可以不重写接口方法
     *
     *  下面这个例子就选择只重写了一个接口方法
     */

    @Override
    public void hi() {

    }
}

  继承抽象类的子类;

package com.skd.abstractinterface;

/**
 * @Description
 * @Author virgosnail
 * @Date 2018/12/12 21:26
 */

/**
 * 继承了实现接口的抽象类,必须实现抽象类未实现的方法
 */
public class MyClass extends MyAbstract{

    @Override
    public void say() {

    }
    @Override
    public void speak() {

    }
}

PS:基础太差了,今天才知道

原文地址:https://www.cnblogs.com/virgosnail/p/10073149.html