java学习干货之接口与实现

接口泛指别人调用的方法或者是函数。我们是通过Interface来定义接口的,我们也可以将接口看做成一个抽象的类,只不过他没有构造方法,同时它里面只有静态的属性和抽象的方法。这样的话接口的实现就有几点注意的事项了:
1、接口的实现使用的是implements关键字来实现的。
2、接口的实现我们要实现接口里面的所有的抽象类当时如果实现接口的类是一个抽象的类的话就可以不实现接口里面的抽象方法。
3、因为接口没有构造方法所以接口不可以实例化。
众所周知java不像c++那样能有多继承,java要实现多继承的话就要通过接口来实现,接口是可以多继承的。接口其实就是一种约定,所以实现接口的类可以有很多。我们有一个例子来细说接口与实现:
我们定义一个书信的接口

public interface ILetter {
    /***
     * 书信的标题
     * @param str1 书信的标题
     */
    void title(String str1);
    /**
     * 书信的问候语
     * @param str2 书信的问候语
     */
    void sallHello(String str2);
    /**
     * 书信的内容
     * @param str3 书信的内容
     */
    void body(String str3);
    /***
     * 书信的结尾
     * @param str4 书信的结尾
     */
    void over(String str4);
    /***
     * 写信人的姓名
     * @param str5 写信人的姓名
     */
    void name(String str5);
    /***
     * 写信的日期
     * @param str6 写信的日期
     */
    void date(String str6);
}

我们定义的这个接口将日常生活中写信的格式,这样我们只要向里面添加文字就可以了。现在我们顶一个类来实现接口:

 public class Letter implements ILetter {
    @Override
    public void title(String str1) {
        System.out.println(str1);
    }
    @Override
    public void sallHello(String str2) {
        System.out.println("  "+str2);
    }
    @Override
    public void body(String str3) {
        System.out.println("\n  "+str3);
    }
    @Override
    public void over(String str4) {
        System.out.println("\n  "+str4);
    }
    @Override
    public void name(String str5) {
        System.out.println("                          "+str5);
    }
    @Override
    public void date(String str6) {
        System.out.println("                  "+str6);
    }
}

实现接口的这个类里面我们重写了书信接口里面的所有抽象的方法,我们一个类也可以实现多个接口,每个接口名之间我们用逗号隔开就可以了。最后一步就是写一个测试类来测试我们写的接口是否有问题了。

public class LetterText {
    public static void main(String[] args) {
        Letter letter = new Letter();
        String str1 = "尊敬的爸爸、妈妈:";
        String str2 = "你们好吗?";
        String str3 = "我在这里挺好的。\n  我会努力学的。\n  您二老保重身体!";
        String str4 = "此致\n敬礼";
        String str5 = "周杰";
        String str6 = "2010年6月1日";
        letter.title(str1);
        letter.sallHello(str2);
        letter.body(str3);
        letter.over(str4);
        letter.name(str5);
        letter.date(str6);
    }
}

我们会发现这和我们多态没有什么多大区别啊!那为什么我们要定义接口?定义接口我们可以更好的管理我们定义的多态。大量的节省代码,同时大量的节省了我们火气维护和更新代码的时间。所以面向接口的编程可以给我们带来无限的好处。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REaDME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值