美文网首页
Java实现接口中的部分方法

Java实现接口中的部分方法

作者: 大道至简_知易行难 | 来源:发表于2019-03-13 20:04 被阅读0次

一、抽象类和接口

抽象类
抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。

public abstract class AbstractClass {
    private int num;

    public abstract void getBookAbs();

    public abstract void getNumAbs();

    //普通方法
    public void dogetCode(int num) {
        this.num = num;
    }
}

定义TestClass继承抽象类

public class TestClass extends AbstractClass {
    @Override
    public void getBookAbs() {

        dogetCode(3);
    }

    @Override
    public void getNumAbs() {

    }
}

接口
接口是抽象方法的集合。如果一个类实现了某个接口,那么它就继承了这个接口的抽象方法。这就像契约模式,如果实现了这个接口,那么就必须确保使用这些方法。接口只是一种形式,接口自身不能做任何事情。

public interface Inter {

    public void getBookInter();

    public void getNumInter();

    public void getName();
}

定义ImplClass继承接口,并实现其中所有的方法

public class ImplClass implements Inter {
    @Override
    public void getBookInter() {

    }

    @Override
    public void getNumInter() {

    }

    @Override
    public void getName() {

    }
}

二、实现接口中的部分方法

我们想实现一个接口,但是又不想具体的实现(当然,如果一个类不是抽象类,要实现一个接口,那必须要实现该接口里面的所有方法,如果是抽象类,那么不必实现接口里面的每一个方法)该接口里面的所有方法,那么我们可以定义一个类,在该类内实现那个接口里面的所有方法,不过这个类里面的这些方法都是空方法,然后让一个子类继承该类,在有选择性的具体的实现其中的某些方法,达到具体的实现与抽象方法分开的目的

1、定义接口

public interface FinalTestInter {
    public void methodFinal_1();

    public void methodFinal_2();
}

2、定义类FinalTestClass实现FinalTestInter接口

/**
 * @author SuTongsheng
 * @create 2019/3/13
 * @Describe
 */
public class FinalTestClass implements FinalTestInter {
    @Override
    public void methodFinal_1() {

    }

    @Override
    public void methodFinal_2() {

    }
}

3、定义方法继承实现类,重新部分方法

public class FinalTestClass_2 extends FinalTestClass {
    @Override
    public void methodFinal_1() {
        super.methodFinal_1();

    }
}

相关文章

网友评论

      本文标题:Java实现接口中的部分方法

      本文链接:https://www.haomeiwen.com/subject/wifxmqtx.html