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
第三个是继承
第二题:
改进
最后回顾一下我们讲的类的学习
最后一个就是内部类 (弹幕上都是累不累哈哈哈哈哈)