先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
正文
package cn.tedu.inter;
/本类用于运行测试接口实现类/
public class InterTests {
public static void main(String[] args) {
/接口可以实例化吗?–不可以!!!/
//Inter i = new Inter();
//创建多态对象进行测试–不常用
Inter i = new InterImpl();
i.eat();
i.play();
//创建纯纯的接口实现类对象进行测试–推荐使用
InterImpl i2 = new InterImpl();
i2.eat();
i2.play();
}
}
创建包: cn.tedu.inter2
创建类:TestUserInter.java
package cn.tedu.inter2;
/*本类用于进一步测试接口的使用/
public class TestUserInter {
//5.创建入口函数main()
public static void main(String[] args) {
/*查看类的继承结构:Ctrl+O/
Inter2 i = new Inter2Impl();
}
}
//1.创建接口
interface UserInter{
//2.测试接口中是否包含构造方法
//public UserInter(){}
/1.接口里没有构造方法/
}
//3.创建接口的实现类
class UserInterImpl implements UserInter{
//4.创建实现类的构造方法
public UserInterImpl(){
/2.如果一个类没有明确指定它的父类,那么它默认继承顶级父类Object/
super();/3.此处调用的父类的无参构造是Object的无参构造/
System.out.println(“我是子实现类的无参构造”);
}
}
总结:接口里是没有构造方法的
如果一个类没有明确指定它的父类,那么它默认继承顶级父类Object,调用的super()是Object的无参构造
package cn.tedu.inter2;
/本类用于进一步测试接口的使用/
public class TestUserInter {
public static void main(String[] args) {
//6.测试接口中的静态常量
System.out.println(UserInter.age);//静态,因为可以被接口名直接调用
//UserInter.age = 37;//final,因为值不可以被修改
}
}
//1.创建接口
interface UserInter{
//5.测试接口中是否可以定义成员变量
/*4.接口中的是静态常量,实际上的写法是public static final int age = 20;
- 只不过接口中可以省略不写,会默认拼接,所以写成 int age = 20;也可以*/
public static final int age = 20;
}
//3.创建接口的实现类
class UserInterImpl implements UserInter{
}
总结:接口里没有成员变量,都是常量。所以,你定义一个变量没有写修饰符时,默认会加上:public static final
package cn.tedu.inter2;
/本类用于进一步测试接口的使用/
public class TestUserInter {
public static void main(String[] args) {
UserInterImpl u = new UserInterImpl();
u.eat();
u.play();
}
}
//1.创建接口
interface UserInter{
//7.测试接口中有抽象方法吗?
/5.接口中抽象方法的定义可以简写,会自动给方法拼接public abstract/
public abstract void eat();
void play();
}
//3.创建接口的实现类
class UserInterImpl implements UserInter{
@Override
public void eat() {
System.out.println(“实现接口中的抽象方法1”);
}
@Override
public void play() {
System.out.println(“实现接口中的抽象方法2”);
}
}
总结:接口里的方法,默认都是抽象的,方法上会默认拼接public abstract。例如:public abstract void save();
具体事物: 培优班老师 高手班老师
共性: 讲课 备课
创建包: cn.tedu.inter2
创建类:TestTeacherInter.java
package cn.tedu.inter2;
/本类用于面向接口编程/
public class TestTeacherInter {
public static void main(String[] args) {
CGBTeacher ct = new CGBTeacher();
ct.ready();
ct.teach();
}
}
//1.创建老师接口–接口是先天设计的结果,最先设计的就是接口,要制定规则
interface Teacher{
//2.定义接口里的方法
void teach();//授课方法
void ready();//备课方法
}
class CGBTeacher implements Teacher{
@Override
public void teach() {
System.out.println(“授课电商项目”);
}
@Override
public void ready() {
System.out.println(“备课电商项目”);
}
}
class ACTTeacher implements Teacher{
@Override
public void teach() {
System.out.println(“正在授课基础加强+框架加强”);
}
@Override
public void ready() {
System.out.println(“正在备课基础加强+框架加强”);
}
}
abstract class SCDTeacher implements Teacher{
@Override
public void ready() {
System.out.println(“正在研发新课程。。。”);
}
}
创建包: cn.tedu.inter2
创建类:TestRelation.java
package cn.tedu.inner2;
import cn.tedu.inter.Inter;
/本类用于测试接口与类之间的复杂关系/
public class TestRelation {
public static void main(String[] args) {
//创建对象进行功能测试
Inter3Impl i = new Inter3Impl();
i.save();
i.delete();
i.update();
i.find();
}
}
//1.创建接口1
interface Inter1{
void save();//保存功能
void delete();//删除功能
}
//2.创建接口22
interface Inter22{
void update();//更新功能
void find();//查询功能
}
//3.创建接口1的实现类
class Inter1Impl implements Inter1{
@Override
public void save() { }
@Override
public void delete() { }
}
总结
在这里,由于面试中MySQL问的比较多,因此也就在此以MySQL为例为大家总结分享。但是你要学习的往往不止这一点,还有一些主流框架的使用,Spring源码的学习,Mybatis源码的学习等等都是需要掌握的,我也把这些知识点都整理起来了
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
}
}
总结
在这里,由于面试中MySQL问的比较多,因此也就在此以MySQL为例为大家总结分享。但是你要学习的往往不止这一点,还有一些主流框架的使用,Spring源码的学习,Mybatis源码的学习等等都是需要掌握的,我也把这些知识点都整理起来了
[外链图片转存中…(img-67j79F9v-1713087115002)]
[外链图片转存中…(img-bztWEOXk-1713087115002)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
[外链图片转存中…(img-Nq90Xc89-1713087115003)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!