惊喜
最后还准备了一套上面资料对应的面试题(有答案哦)和面试时的高频面试算法题(如果面试准备时间不够,那么集中把这些算法题做完即可,命中率高达85%+)
官方定义:接口是一系列方法的声明,是一些方法特征的集合
接口:用来定义规范。
以制造手机为例:
在 Java 中,接口 = 规范
2.2入门:定义接口
需求说明:
公司提出手机(Phone)的设计规范:手机可以打电话(call),可以发信息(sendMessage)
请将手机的设计规范定义为 Java 中的接口
知识讲解:
1、 接口定义时需要使用 interface 关键字
2、 接口定义格式为:
public interface 接口名 {
返回值类型 方法名 1(参数列表);
}
注:接口中非静态成员方法都无需方法体
代码实现:
接口定义完毕,就制定了一个 Phone 接口,为其他手机类的定义,制定了规范
3.进阶:实现接口
=========
因为接口无法直接创建对象,
所以我们必须根据接口来定义普通 Java 类,使用普通 Java 类创建对象。
根据接口定义普通 Java 类,重写接口中方法的过程,我们称为:实现接口
实现接口的普通 Java 类,我们也叫做实现类
格式:
public class 类名 implements 接口名 {
重写接口中的方法
}
需求:
请在公司提出的手机(Phone)的设计规范的基础上,定义苹果手机类(IPhone),
将接口中提出的两个功能,真正实现出效果:
打电话(call):控制台展示“打电话”
发信息(sendMessage):控制台展示“发短信”
最终在测试类中,创建一个苹果手机类对象,分别调用两个方法
分析:
1、定义实现类
2、通过实现类,创建对象
实现:
Iphone 类:(实现接口)
public class IPhone implements Phone {
@Override
public void call() {
System.out.println("打电话");
}
@Override
public void sendMessages() {
System.out.println("发短信");
}
}
Demo1 类:
public static void main(String[] args) {
IPhone ip = new IPhone();
ip.call();
ip.sendMessages();
}
总结:实现接口就是:Iphone 类将接口所有方法逐一重写,从而真正实现了每个方法的功能。
4.IDEA快捷实现接口
============
IDEA 可以帮我们快捷定义某个接口的实现类:
5.接口强化练习
========
5.1练习1:管理班级接口
定义管理班级接口(Management):
接口中定义两个方法:作业检查(check)、考试(exam)
定义班主任(ClassTeacher)类,让班主任具备管理班级的功能。
定义讲师(Lecturer)类,让讲师具备管理班级的功能。
注意:实现了哪个接口,我们就认为:类就具备了哪些功能。
例如:
1、 实现了手机接口,类就具备了手机功能
2、 实现了飞行接口,类就具备了飞行功能
3、 实现了计算接口,类就具备了计算功能。
5.2练习2:孩子继承父亲 孩子是学生 父亲不是学生
现有如下类或接口:父亲(Father),孩子(Child),学生(Student)
他们之间的关系为:
孩子继承了父亲,都能跑步锻炼
孩子是学生,有学习功能
Ending
Tip:由于文章篇幅有限制,下面还有20个关于MySQL的问题,我都复盘整理成一份pdf文档了,后面的内容我就把剩下的问题的目录展示给大家看一下
如果觉得有帮助不妨【转发+点赞+关注】支持我,后续会为大家带来更多的技术类文章以及学习类文章!(阿里对MySQL底层实现以及索引实现问的很多)
吃透后这份pdf,你同样可以跟面试官侃侃而谈MySQL。其实像阿里p7岗位的需求也没那么难(但也不简单),扎实的Java基础+无短板知识面+对某几个开源技术有深度学习+阅读过源码+算法刷题,这一套下来p7岗差不多没什么问题,还是希望大家都能拿到高薪offer吧。
,你同样可以跟面试官侃侃而谈MySQL。其实像阿里p7岗位的需求也没那么难(但也不简单),扎实的Java基础+无短板知识面+对某几个开源技术有深度学习+阅读过源码+算法刷题,这一套下来p7岗差不多没什么问题,还是希望大家都能拿到高薪offer吧。