先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
正文
注意:属性必须为private
。
1.1 截图你主要代码(需要在程序中出现你的学号和姓名)并粘贴程序的git地址。
1.2 对比你的代码与例程的代码,说明面向对象编程与面向过程编程有何区别?参考资料:
BigDecimal类的代码,尤其是其中的方法设计。
2. 构造函数与初始化块
2.1 **结合PTA(构造函数与toString)**说明构造函数有什么用?其形式有何特征?
2.2 如果一个类不写构造函数,它有构造函数吗?如果一个类中只有带参的构造函数,它有没有不带参数的默认构造函数?
2.3 查看String
类的源代码,找出3个看得懂的String类的构造函数,并使用自己的话描述这3个构造函数的区别。
2.4 结合PTA(构造函数与初始化块)说明初始化块与构造函数的异同。并说明,初始化块与构造函数谁先执行?初始化块与静态初始化块有何不同,谁先执行?如果建立过个对象,静态初始化块会执行几次?
3.代码分析:Math类
3.1 使用java.lang.Math
类的方法时,为什么不需要new出一个Math对象,然后调用该对象上相应的方法?
3.2 如果new Math()
会产生什么错误?尝试阅读Math类源代码,分析原因。
3.3 **进一步:**你觉得什么样的对象需要new出来才能用,调用什么方法时不必创建相应对象就可以使用?(重点检查)
4. 重载Overload
4.1 什么是重载?什么是构造函数重载?怎么才能区分两个重载的方法?
4.2 在java.lang.Math
类中举出1个方法重载的例子?
5. 代码阅读: final
final修饰的变量不能改变,为什么如下代码却可正常运行? final int[] NUMBS= {1,2,3,4,5}; NUMBS[2] = 1;
6. Java8中的时间日期类:编写函数public static boolean isMondayToFriday()
**功能:**判断今天如果是周一到周五,返回true,返回false。main函数中调用该函数,如果为true则输出“工作日+姓名学号”,否则输出"休息+姓名学号"。**截图:**关键代码。提示:使用LocalDateTime, DayOfWeek类参考资料:
JAVA 8:健壮、易用的时间-日期API - ImportNew.pdf
Java8DateTimeTest.java
7. 封装
7.1 结合PTA(形状),请用自己的话简单总结一下面向对象中封装
是什么意思?有何好处?**
7.2 和封装有关的关键字有哪些?
8. 结对编程实践(未完成本次作业得0分)
找一个水平相近的同学完成1-2题实验题。开始编程前,可先对内容进行讨论。
写出体验报告,包括以下内容:1.对方姓名。2.所完成的题目。3.使用结对这种方法进行编程的感想(非实验总结)。4.照片(上次很多同学并未贴照片,请贴上)
9. 选做:使用阿里巴巴静态代码扫描工具 扫描自己的代码
9.1 简述自己代码中在规范方面出现的问题
9.2 如何解决这些问题
10. 选做:Runnable Jar
我们以前编写的程序,必须打开Eclipse或者将相应的.class文件拷贝出来在命令行下执行相应命令才能运行,如果.class文件较多且类文件中有包名,需要将完整的目录结构及文件拷贝出来,才能运行。现在希望将Eclipse项目中的Java文件打成一个可运行的jar包,在命令行直接运行。改造题目6,使其从命令行接收参数,参数为年-月-日
,如1999-09-09
。最后将项目打成可运行的jar包,然后在命令行通过java -jar
运行,并截图。参考文件如下:
3. 码云及PTA
==========
最后
在面试前我整理归纳了一些面试学习资料,文中结合我的朋友同学面试美团滴滴这类大厂的资料及案例
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
大家看完有什么不懂的可以在下方留言讨论也可以关注。
觉得文章对你有帮助的话记得关注我点个赞支持一下!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
的资料的朋友,可以添加V获取:vip1024b (备注Java)**
[外链图片转存中…(img-VBMYWepJ-1713097329545)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!