整理了一些Java相关的流程图和架构图,大家共同学习和进步~

01 Java程序的编译运行过程

Java整个编译以及运行的过程相当繁琐,但简化来说,主要分为以下两大步骤:

1)Java代码编译:创建完源文件之后,程序会先被编译为.class文件,然后再编译成字节码(ByteCode);

2)Java字节码的执行:字节码由Java虚拟机(JVM)解释运行。

02 JVM内存模型

根据JVM规范,JVM 内存共分为程序计数器、虚拟机栈、本地方法栈、方法区、堆五个部分

图片模糊的话,可以点击图片“查看原图”,或者直接查看源文件

>>>java内模型 - 在线模板社区
edrawmax.cn/templates/file/101264

1)程序计数器(线程私有,无GC,Garbage Collection):指向当前线程正在执行的字节码的地址、行号。

2)虚拟机栈(线程私有,无GC):存储当前线程运行方法所需要的数据、指令、返回地址。每一个方法都对应一个栈帧,可以通过配置Xss来配置栈帧的大小。

3)本地方法栈(线程私有,无GC):和虚拟机栈类似。不同的是,本地方法栈存储的是本地方法的数据。

4)方法区(线程共享):被所有方法线程共享的一块内存区域。用于存储已经被虚拟机加载的类信息、常量、静态变量等。这个区域的内存回收目标主要针对常量池的回收和堆类型的卸载。

5)Java 堆(线程共享,要GC):被所有线程共享的一块内存区域,在虚拟机启动的时候创建,用于存放对象实例。一个JVM实例只有一个堆内存。

03 Java多线程

我们可以用电脑一边听歌,一边编写文档和发送邮件。这种同时执行多个操作的“思想”在 Java 中被称为并发,而将并发完成的每一件事称为线程。而这种机制被称为多线程。

04 Java集合类

集合类是Java数据结构的实现。Java的集合类是java.util包中的重要内容。

05 Spring

Spring是Java三大框架之一。它是分模块存在,除了最核心的Spring Core Container(即Spring容器)是必要模块之外,其他模块都是可选,视需要而定。

核心容器提供 Spring 框架的基本功能(Spring Core)。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。

Spring容器根据各种形式的Bean配置信息在容器内部建立Bean定义注册表,然后根据注册表加载、实例化Bean,并建立Bean之间的依赖关系,最后将这些准备就绪的Bean放到Bean缓存池中,以供外层的应用程序进行调用。

图片模糊的话,可以点击图片“查看原图”,或者直接查看源文件

>>>springbean的实例化图解 - 在线模板社区
edrawmax.cn/templates/file/1012336

06 TCP

TCP作为一种可靠传输控制协议,其核心思想:既要保证数据可靠传输,又要提高传输的效率,而用三次恰恰可以满足以上两方面的需求。

TCP三次握手时序图

更多流程图/架构图可以到亿图图示模板社区搜索▼

亿图图示模板社区-海量模板在线使用​
edrawmax.cn

Java程序员必备的一些流程图/架构图(拿走不谢)相关推荐

  1. 程序流程图_干货收藏 | Java 程序员必备的一些流程图

    阅读本文大概需要 6 分钟. 转载自:https://juejin.im/post/5d214639e51d4550bf1ae8df 1.Spring 的生命周期 Spring 作为当前 Java 最 ...

  2. Java 程序员必备的一些流程图

    1.spring的生命周期 2.TCP三次握手,四次挥手 3.线程池执行流程图 4.JVM内存结构 5.Java内存模型 6.springMVC执行流程图 7.JDBC执行流程 8.spring cl ...

  3. 池流程图_干货收藏 | Java程序员必备的一些流程图

    前言: 整理了一些Java基础流程图/架构图,做一下笔记,大家一起学习. 1.spring的生命周期 Spring作为当前Java最流行.最强大的轻量级容器框架,了解熟悉spring的生命周期非常有必 ...

  4. 多图 | Java 程序员必备的一些流程图

    1.spring的生命周期 2.TCP三次握手,四次挥手 3.线程池执行流程图 4.JVM内存结构 5.Java内存模型 6.springMVC执行流程图 7.JDBC执行流程 8.spring cl ...

  5. Java 程序员必备的 15 个框架,前 3 个地位无可动摇!

    2019独角兽企业重金招聘Python工程师标准>>> Java 程序员方向太多,且不说移动开发.大数据.区块链.人工智能这些,大部分 Java 程序员都是 Java Web/后端开 ...

  6. Java程序员必备的10个大数据框架

    当今IT开发人员面对的最大挑战就是复杂性,硬件越来越复杂,OS越来越复杂,编程语言和API越来越复杂,我们构建的应用也越来越复杂.根据外媒的一项调查报告,小千列出了Java程序员在过去12个月内一直使 ...

  7. Java程序员必备的几款开发工具,高效才是硬道理!

    作为一名优秀的Java程序员,怎能没有几款得心应手的高效开发工具呢!市面上类库.工具千千万,下面我就给大家推荐几款高效的Java开发工具. 一.Eclipse Eclipse做为一款开发源代码的Jav ...

  8. Java程序员必备的几款开发工具

    工欲善其事,必先利其器.作为一名优秀的Java程序员,怎能没有几款得心应手的高效开发工具呢!市面上类库.工具千千万,下面就给大家推荐几款高效的Java开发工具. 1.UItraEdit UltraEd ...

  9. B站疯传|200个Java程序员必备词汇

    相信很多学生在学习英语的时候都有这样那样的问题,因此也困扰着太多想要学习编程的小伙伴. 其实学习编程,常用的单词就那么多,只要把必备的单词学会,你的代码也能写的很6,编程和英语的关系就是这么简单纯粹. ...

  10. dalvik虚拟机执行流程_程序员必备的一些流程图

    阅读文本大概需要3分钟. - 1 - Spring的生命周期 Spring作为当前Java最流行.最强大的轻量级容器框架,了解熟悉spring的生命周期非常有必要: 首先容器启动后,对bean进行初始 ...

最新文章

  1. Spring(ApplicationContextBeanFactory)
  2. linux成长笔录——week_1
  3. oracle 无法弹出图形界面,Xshell 5 不能弹出GUI 图形界面问题
  4. 客户端调用webSerices
  5. linux cp -ip,linux cp命令
  6. mongoDB备份方案
  7. Electron 设置透明窗口transparent 属性win7无效详解
  8. 深入浅出曲面的切平面方程和曲面的法线方程
  9. cf两边黑屏怎么解决win10_电脑黑屏怎么解决
  10. npm安装依赖报错:npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\misal\AppData\R
  11. 纯JS实现倒序九九乘法表 for循环
  12. android viewgroup点击变色,Android ViewGroup点击效果(背景色)
  13. 如何在html编辑文字信息,怎样简单修改网页中的内容,例如图片文字等?
  14. 奇瑞文档云服务器地址,奇瑞文档云服务器地址是多少
  15. 语义分割如何走下去?| 文末送书
  16. 如何查阅NLP资料 转自https://blog.csdn.net/qq_27009517/article/details/80841146
  17. week8 作业B 猫猫向前冲
  18. 如何恢复自身的精力 [转]
  19. 纯 CSS3 实现漂亮的 input 输入框
  20. 局域网计算机修改网络用户,windows10怎么修改局域网网络名称

热门文章

  1. 信号与系统与数字信号处理丹梅老师公众号笔记
  2. 计算机的桌面助手,正规的电脑桌面一键整理助手
  3. 电子公文的七大问题与八大关系(转)
  4. delphi2010转码Base64图片上传百度AI接口识别发票手记
  5. 电子密码锁设计-单片机课程设计
  6. Matlab 获取主板、硬盘、CPU、BIOS和网卡序列号
  7. 全国大学生电子设计竞赛综合测评硬件调试经验
  8. 本地连接无法清除DNS缓存的解决办法
  9. 手工制作totem播放器的播放列表
  10. Linux chmod 修改多个文件权限