先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
正文
public class HelloWorld {
public static void main(String[] args) {
System.out.println(“Hello,Java”);
System.out.println(“My name is:” + args[0]);
}
}
注意:1:类名一定是大驼峰类型,即像TestDemo这样的命名。
2:类名一定要跟文件名相同 ,前提是这个类一定是一个public类
3:main方法作为程序的入口,void为返回值,main为方法名称,括号内为形式参数,在这里思考一个问题:为什么main方法为static静态的?
思考:String[] args这个main函数参数中的数组存放的到底是什么?
当我们用for循环遍历输出这个数组的时候我们会发现此时没有输出
但当我们在命令行运行TestDemo.java文件的时候,此时我们传入两个参数,一个是hello,一个是world,此时我们发现程序会输出hello和world
所以args代表的是我们java运行时命令行参数,当我们在命令行运行.java文件并附带参数的时候,此时会直接对这几个参数进行输出,如下图所示:
运行java程序
Java是一门半编译型、半解释型语言。先通过javac编译程序把源文件进行编译,编译后生成的.class文件是由字节码 组成的平台无关、面向JVM的文件。最后启动java虚拟机来运行.class文件,此时JVM会将字节码转换成平台能够理解的形式来运行,即如下图所示:
jvm中内存的划分
1:java虚拟机栈(jvm Stack):平时所说的栈,方法要开辟内存一定要在java虚拟机栈上开辟。
2:本地方法栈:运行的代码是jvm底层代码,java虚拟机(jvm)是由c/c++代码实现
3:堆:堆上存放的一般是对象。
4:程序计数器:存放的是指令,即下一条程序执行的指令
5:方法区:一般存储的是静态的数据,其中还包含了方法表,其中存储的是方法的地址,构成了一张表
最后
Java架构进阶面试及知识点文档笔记
这份文档共498页,其中包括Java集合,并发编程,JVM,Dubbo,Redis,Spring全家桶,MySQL,Kafka等面试解析及知识点整理
Java分布式高级面试问题解析文档
其中都是包括分布式的面试问题解析,内容有分布式消息队列,Redis缓存,分库分表,微服务架构,分布式高可用,读写分离等等!
互联网Java程序员面试必备问题解析及文档学习笔记
Java架构进阶视频解析合集
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
.(img-qgLnzXpR-1713685729854)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!