1、字符串的不变性

下图展示了如下的代码运行过程:


String s = "abcd";s = s.concat("ef");

备注:String reference variable :字符串引用变量  String object:字符串对象

2、equals() 和hashCode()的关系

哈希码是设计用于提高性能的。equals()和hashCode()的关系是:

2.1如果两个对象相等,那么它们一定有着相同的哈希码。

2.2即使两个对象有着相同的哈希码,但它们不一定相等。

备注:Hash Function:哈希函数        buckets:散列桶

3、Java异常类的层次结构

红颜色标注的方块属于检查异常,这类异常必须通过在try—catch代码块里捕获异常或者在方法中用thorws申明抛出异常。

4、集合类的层次结构

注意Collections和Collection的区别:

备注:Collection:是集合类层次结构的最顶层接口。

Collecitons:这个类由操作集合对象的静态方法和集合对象组成。

5、Java同步机制

Java同步机制可以用一栋大楼来比喻阐述:

备注:special room:专用房间   wait room:等待室     hallway:走廊

6、引用别名机制

引用别名机制是指多个引用可以定位到同一个能被更新的内存地址,而这些引用变量可以是不同的类型。

7、栈和堆

下图展示了方法和对象在运行时在内存的存储位置

备注:Stack:栈  Heap:堆

8、Java虚拟机运行时数据区域

下图展示了java虚拟机运行时总体的数据区域

备注:Thread:线程  PC Register:程序计数器   JVM Stack:Java虚拟机栈

Native Method Stack:本地方法栈 Heap:堆   Method Area:方法区:Runtime Constant Pool:运行时常量池

来自为知笔记(Wiz)

8张图带你深入理解Java相关推荐

  1. 扔掉源码,15张图带你彻底理解java AQS

    java中AQS是AbstractQueuedSynchronizer类,AQS依赖FIFO队列来提供一个框架,这个框架用于实现锁以及锁相关的同步器,比如信号量.事件等. 在AQS中,主要有两部分功能 ...

  2. 24张图带你彻底理解Java中的21种锁

    本篇主要内容如下: 本篇主要内容 本篇文章已收纳到我的Java在线文档. Github 我的SpringCloud实战项目持续更新中 帮你总结好的锁: 序号 锁名称 应用 1 乐观锁 CAS 2 悲观 ...

  3. java中怎么判断一段代码时线程安全还是非线程安全_24张图带你彻底理解Java中的21种锁...

    (给ImportNew加星标,提高Java技能) 转自:悟空聊架 本篇主要内容如下: 本篇文章已收纳到我的 Java 在线文档. Github.我的 SpringCloud 实战项目持续更新中. 帮你 ...

  4. 8张图带你轻松温习Java知识

    转载自 8张图带你轻松温习Java知识 1 字符串不变性 下面这张图展示了这段代码做了什么 [code ]String s = "abcd";  s = s.concat(&quo ...

  5. 10张图带你深入理解Docker容器和镜像--云平台技术栈07

    导读:之前发布了云平台技术栈(ps:点击可查看),本文主要说一下其中的Docker! 翻译:杨润青 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(image ...

  6. 10张图带你深入理解Docker容器和镜像

    本文用图文并茂的方式介绍了容器.镜像的区别和Docker每个命令后面的技术细节,能够很好的帮助读者深入理解Docker. 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(containe ...

  7. 10 张图带你深入理解Docker容器和镜像

    此文中部分信息.图片需要 fan qiang , 如果未能正常显示,文末有原文连接 . [Kubernetes培训通知]DockOne将会于2018年5月18日在上海举办Kubernetes技术培训, ...

  8. Docker--10张图带你深入理解Docker容器和镜像

    这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(image)之间的区别,并深入探讨容器和运行中的容器之间的区别. 当我对Docker技术还是一知半解的时候,我 ...

  9. 红黑树分为红和黑有什么好处_30 张图带你彻底理解红黑树

    点击上方"程序员大白",选择"星标"公众号 重磅干货,第一时间送达 来源:编程那些事等等 本文将通过图文的方式讲解红黑树的知识点,并且不会涉及到任何代码,相信我 ...

最新文章

  1. python读取word
  2. UBUNTU添加开机自动启动程序方法
  3. IDEA快捷键(修改成eclipse版)+Templates
  4. 强势崛起的Python会在十年内取代Java吗?
  5. 云原生开发框架dapr环境搭建:CLI安装和初始化
  6. LeetCode动态规划 最大子序和
  7. 【笔记】MySQL的基础学习(二)
  8. 数据库的Timeout
  9. EasyUI-在iframe里获取现阶段选中的tab的标题
  10. asp.net(C#)软件中多语言解决方案
  11. 实现透明防火墙的必备知识-Bridge Filter半景
  12. Xray配合awvs漏洞扫描
  13. android第三方视频播放加密,android 视频 加密/解密(使用AES)
  14. 【Scratch案例实操】scratch变魔术 scratch编程案例教学 scratch创意编程 少儿编程教案
  15. ai修复照片软件是哪个软件_智能照片修复
  16. win7计算机打印机共享权限设置,win7共享打印机(没有权限访问)
  17. 如何下载百度地图离线包并导入OruxMaps
  18. OpenCV——PS 滤镜, 浮雕效果
  19. React Native 应用深度链接是如何通过 URL打开到指定页面
  20. 头条粉丝红利期来了,最新涨粉攻略我真不想告诉你

热门文章

  1. python语言入门m-Python入门基础三-函数
  2. python 基础命令-Python 命令行(CLI)基础库
  3. python和c-C和Python我该先学什么?
  4. python安装pip-安装pip的三种方法
  5. python教程书籍-推荐python机器学习实践的书籍?
  6. 行为模式之Observer模式
  7. 毕业设计第四次任务书
  8. 佩特来项目经验小集合(2)___组合查询存储过程,报错 quot;varchar JBID=#39;#39; 转换成数据类型 int 时失败quot;...
  9. Emmet插件使用方法总结
  10. 【Irrlicht鬼火引擎】 安装配置Irrlicht鬼火引擎