摘要:
博主个人独立站点开通啦!欢迎点击访问:https://shuyi.tech 温馨提示:此篇文章长达两万字,图片50多张,内容非常多,建议收藏后再看。 前面我们说到 Java 虚拟机使用字节码实现了跨平台的愿景,无论什么系统,我们都可以使用 Java 虚拟机解释执行字节码文件。但其实字节码是有一套规范 阅读全文
摘要:
博主个人独立站点开通啦!欢迎点击访问:https://shuyi.tech 在上篇文章我们聊到,无论什么语言写的代码,其到最后都是通过机器码运行的,无一例外。那么对于 Java 语言来说,其从源代码到机器码,这中间到底发生了什么呢?这就是今天我们要聊的。 如下图所示,编译器可以分为:前端编译器、JI 阅读全文
摘要:
博主个人独立站点开通啦!欢迎点击访问:https://shuyi.tech 我们都知道在 Windows 系统上一个软件包装包是 exe 后缀的,而这个软件包在苹果的 Mac OSX 系统上是无法安装的。类似地,Mac OSX 系统上软件安装包则是 dmg 后缀,同样无法在 Windows 系统上安 阅读全文
摘要:
说起 Java 虚拟机,许多人就会将其与 HotSpot 虚拟机等同看待。但实际上 Java 虚拟机除了 HotSpot 之外,还有 Sun Classic VM、Exact VM、BEA JRocketit、IBM J9 等等。今天我们就来简单回顾下 Java 虚拟机的发展历史。 虚拟机始祖:Su 阅读全文
摘要:
Java 语言是一门存在了 20 多年的语言,其年纪比我自己还大。虽然存在了这么长时间,但 Java 至今都是最大的工业级语言,许多大型互联网公司均采用 Java 来实现其业务系统。大到国际电商巨头阿里巴巴,小到无名小公司,我们均可看到 Java 的身影。 我是 2010 年开始接触 Java 语言 阅读全文
摘要:
JVM是深入理解语言的基础,也是排查线上问题的基础。 阅读全文
摘要:
2018年就快过去了,趁着这个机会整理今年写下的一些文章。也可以让新来的朋友有个索引,方便查看。 Java基础 "注解的那些事儿(三)| 注解的使用" "注解的那些事儿(二)| 如何自定义注解" "注解的那些事儿(一)| 为什么要使用注解?" "大白话说Java反射:入门、使用、原理" "大白话说J 阅读全文
摘要:
今天偶然想起之前和朋友讨论过的一个问题:如何唯一确定一个 Java 类?我相信大多数朋友遇到这个问题的回答都是:类的全路径呗。但事实上,唯一确定一个 Java 类,单单靠类路径是不够的,还要多加上一个东西:类加载器。也就是说, 类加载器 + 类路径才唯一确定一个 Java 类。 为了证明我所说的,我 阅读全文
摘要:
前几天在 code review 时发现有一段代码中存在滥用try catch的现象。其实这种行为我们也许都经历过,刚参加工作想尽量避免出现崩溃问题,因此在很多地方都想着 try catch一下。 但实际上这种习惯不仅会让代码很难看,更会影响代码的运行性能。有些人会觉得,不就是一个 try catc 阅读全文
摘要:
随着毕业季的来临,我收到许多年轻读者的询问,他们问我是否应该上大学或者读研究生。 答案是? 要看情况。 尽管读大学或研究生能够增加你的竞争力,但它们并不适合所有人。 尽管主流社会告诉你,如果你想要经营成功企业、实现财务自由,那么上大学、上MBA是必须的。但在很多情况下,从财务、时间和经验这几个方面评 阅读全文