java第二阶段之接口interface implements

ps:内容为本人学习韩顺平老师课程的笔记,全部all总都为个人总结。

接口快速入门

程序即是一个世界 现实生活中存在的往往在编程中都有对应的
比如生活中常见的接口 可以把相机/手机/u盘插入 是因为usb插槽的厂家和各种设备的厂家都遵守了统一的规定包括尺寸排线等
我们试着将接口程序化
接口:(这个不需要实例化)
在这里插入图片描述
手机:
在这里插入图片描述
相机:
在这里插入图片描述
当然还有电脑
在这里插入图片描述

相当于电脑提供了接口 接口可以插手机 相机

测试案例:
在这里插入图片描述

接口基本介绍

在这里插入图片描述

在接口中抽象方法可以省略关键字abstract关键字
jdk之后可以有默认(需要有default关键字修饰)和静态方法static
如果一个类implements实现接口 那类中需要将该接口中的所有抽象方法都实现

接口应用场景

知识点不难 难的是我们什么时候用接口
在这里插入图片描述

根据上面的说法我们来实现一下
项目经理规定的接口里面有connec和close方法
在这里插入图片描述
A程序员写个连接数据库的实现
必须要实现接口的抽象方法//相当于重写
在这里插入图片描述
B程序员 oracle
在这里插入图片描述
测试类
在这里插入图片描述
细细去品 其实是有点类似继承(用法) 但是出发点是不同的 下面会说差别

接口使用细节

1.接口不能被实例化 其实这个在上面测试类也能看出来 实例化的都是实现类

2.接口中所以的方法都是public
在这里插入图片描述
前面还有public 这个是可以证明的 就是下面实现的时候如果时protected就报错了

3.alt+enter来快速实现接口中的抽象方法
在实现类里面的方法要加上public

4.抽象类去实现接口时,可以不实现接口的抽象方法
在这里插入图片描述
在这里插入图片描述
5.一个类可以实现多个接口
在这里插入图片描述

这个时候我看到了一个弹幕说:“要是两个接口有重名的那要去调用谁?“
我感觉不会有重名的,因为没意义,以为 就是个抽象类,还要到实现类里面自己写

6.在这里插入图片描述

怎么去证明是public static final int
static:
在这里插入图片描述
不能实例化但是可以直接调用啊
这只能是类变量 static才可以通过类名直接访问你n1
final:
在这里插入图片描述
public:
在这里插入图片描述

7.8.在这里插入图片描述
多个只能是 类实现接口5 接口继承接口8

在这里插入图片描述

9.在这里插入图片描述

接口VS继承

在这里插入图片描述
继承就是同类 除了私有的都被继承了 小猴子继承老猴子
而接口就是想拥有某一些功能 猴子想学鸟的飞翔 鱼的游泳
接口是对java单继承模式的一种补充
在这里插入图片描述
三种不同

在这里插入图片描述
在这里插入图片描述
解耦
之后讲到接口源码的时候就会清楚了

接口多态特征

多态参数

在这里插入图片描述
new phone new camera
work(phone) work(camera)

再来一个
在这里插入图片描述
向上转型

多态数组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

多态传递

代码演示
在这里插入图片描述
在这里插入图片描述

接口课堂练习

在这里插入图片描述
第一个是公共 实例化了之后可以public允许去访问不一个类
第二个是static
第三个是继承

第二题:
在这里插入图片描述

在这里插入图片描述
改进
在这里插入图片描述

最后回顾一下我们讲的类的学习
在这里插入图片描述
最后一个就是内部类 (弹幕上都是累不累哈哈哈哈哈)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中,接口interface)是一种特殊的抽象类,它定义了一组抽象方法,但没有具体的实现。接口可以被类实现(implements),这意味着类需要提供接口中定义的所有方法的实现。 接口的定义格式如下: ``` public interface 接口名 { // 定义常量 public static final 类型 常量名 = 值; // 定义抽象方法 public abstract 返回类型 方法名(参数列表); // 其他方法(默认方法、静态方法) } ``` 接口中可以定义常量和抽象方法。常量必须是 public static final 类型,而抽象方法必须是 public abstract 返回类型 方法名(参数列表) 形式。接口中的方法默认是 public 访问权限,所以可以省略不写。 一个类可以实现多个接口,实现接口的语法如下: ``` public class 类名 implements 接口1, 接口2, ... { // 实现接口中的抽象方法 } ``` 实现接口时,必须提供接口中定义的所有抽象方法的实现。如果一个类没有提供接口中所有方法的实现,那么这个类必须声明为抽象类。 除了抽象方法和常量外,接口还可以定义默认方法和静态方法。默认方法是在接口中提供一个默认的实现,可以被实现类覆盖。静态方法是接口中的类方法,可以直接通过接口名调用。 接口的多态性体现在,一个类可以同时实现多个接口,从而具备了多个接口的特性。而接口也可以作为方法的参数或返回值类型,从而实现了方法的参数多态和返回值多态。 总之,接口Java中重要的特性之一,它可以定义规范,提高代码的复用性和可维护性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值