【java篇】第四话-java接口详解

个人简介

  • 💖作者简介:大家好!我是orangemilk_。

  • ✅个人主页:orangemilk_

  • 📂 喜欢:🌈点赞🌈收藏!更新Java🌈python编程进阶之路。

  • ✊加油,共勉!


🌕目录

  • ✅1.接口的定义

  • ✅2.接口的实现

  • ✅3.接口的引用

  • ✅4.接口的继承

  • ✅5.利用接口实现多重继承

✅1.接口的定义

=====================================================================

🌈接口是一种特殊的抽象类,是Java提供的一个重要的功能,与抽象类不同的是:

  • 🚀接口的所有数据成员都是静态的且必须初始化。
  • 🚀接口中的所有方法必须都是抽象方法,不能有一般的方法。

[public] interface 接口名称 [extends  父接口名列表]

{

	[public] [static] [final]数据类型 成员变量名 = 常量;

	...

	[public][abstract]返回值数据类型 方法名(参数表);

	...

}



在这里插入图片描述

其中,成员方法必须都是抽象方法。接口定义的[ ]中的修饰符可以省略,省略后默认为以上访问权限。

—🍁分割线🍁—


✅2.接口的实现

=====================================================================

🌈接口和抽象类一样不能用来实例化对象,必须借用接口的特征创建出来一个新的类,然后用新的类来实例化对象。

  • 🚀利用接口创建新的类的过程称为接口的实现。
  • 🚀实现一个接口的过程使用implements关键字。

class 类名称 implements 接口名表

{

	...

}



在这里插入图片描述

  • 🚀如果实现某接口的类不是抽象类,那么它必须实现指定接口的所有抽象方法。
  • 🚀类在实现接口的方法时必须显式的使用pulic访问权限修饰符,子类覆盖父类方法时不可以缩小父类方法的访问权限范围。

—🍁分割线🍁—


✅3.接口的引用

=====================================================================

🌈接口可以作为一种引用类型来使用,任何实现该接口的类实例化的对象都可以储存在该接口类型的变量中,通过这些变量访问类所实现的接口中的方法。

在这里插入图片描述

—🍁分割线🍁—


✅4.接口的继承

=====================================================================

🌈当然啦!接口和类一样也可以使用继承派生出来新的类。也可以通过extends关键字来实现,被继承的接口称为父接口,派生出来的新接口称为子接口。但是不同的是,一个子接口可以同时有多个直接父接口。它们之间用逗号分隔。子接口继承父接口的所有变量和方法。

如果子接口中定义了和父接口同名的常量,父接口中的常量被隐藏,如果时方法,则被覆盖。


interface A{

    abstract void print1();

}

interface B extends A{

    abstract void print2();

}

class C implements B{

    public void print1(){

        System.out.print("Hello");

    }

    public void print2(){

        System.out.print("World");

    }

}

public class Print{

    public static void main(String[] args){

        B b=new C();

        b.print1();

        b.print2();

    }

}



一线互联网大厂Java核心面试题库

image

正逢面试跳槽季,给大家整理了大厂问到的一些面试真题,由于文章长度限制,只给大家展示了部分题目,更多Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等已整理上传,感兴趣的朋友可以看看支持一波!

一线互联网大厂Java核心面试题库

[外链图片转存中…(img-1B2VDHAs-1718781957157)]

正逢面试跳槽季,给大家整理了大厂问到的一些面试真题,由于文章长度限制,只给大家展示了部分题目,更多Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等已整理上传,感兴趣的朋友可以看看支持一波!

  • 24
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值