Java 深入理解
文章平均质量分 85
文章是我在学习其他著作的一些摘抄和笔记,摘抄下来与诸君共勉,小弟才疏学浅,还望不吝赐教。
爆米花9958
这个作者很懒,什么都没留下…
展开
-
Kotlin 基础语法
Kotlin 文件以 .kt 为后缀。包声明包的声明应处于源文件顶部:package my.demoimport java.util.*// ……kotlin源文件不需要相匹配的目录和包,源文件可以放在任何文件目录。如果没有指定包,默认为default包。默认导入有多个包会默认导入到每个 Kotlin 文件中:kotlin.* kotlin.annota...原创 2018-12-09 20:10:14 · 223 阅读 · 1 评论 -
运行时数据区——程序计数器
概念 程序计数器是一块较小的内存空间,他可以看做是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里(仅是概念模型,各种虚拟机可能会通过一些更高效的方式去实现),字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。 由于java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式...翻译 2018-09-14 18:34:26 · 244 阅读 · 0 评论 -
运行时数据区——Java虚拟机栈
与程序计数器一样, Java虚拟机栈(Java Virtual Machine Stacks)也是线程私有的,它的生命周期与线程相同。Java栈以帧为单位保存线程的运行状态。每个方法在执行的时候都会创建一个栈帧用于存储局部变量表、操作栈、动态链接、 方法出口等信息。虚拟机只会直接对Java栈执行两种操作: 以帧为单位的压栈或出栈。 Java方法可以以两种方式完成。一种通过return...原创 2018-08-26 20:26:38 · 280 阅读 · 0 评论 -
运行时数据区——Java堆
Java程序在运行时创建的所有类实例或数组都放在同一个堆中。一个Java虚拟机实例中只存在一个堆空间, 因此所有线程都将共享这个堆,它在虚拟机启动时创建。 又由于一个Java程序独占一个Java虚拟机实例, 因而每个Java程序都有它自己的堆空间——它们不会彼此干预 。但是同一个Java程序的多个线程却共享着同一个堆空间,在这种情况下,就得考虑多线程访问对象(堆数据)的同步问题了。堆在JVM启...原创 2018-08-26 20:21:31 · 373 阅读 · 0 评论 -
运行时数据区——方法区
在Java虚拟机中, 关于被装载类的信息存储在一个逻辑上被称为方法区的内存中。 当虚拟机加载某个类型时,它使用类加载器定位相应的class文件,然后读入这个class文件——一个线性二进制数据流,然后将它传输到虚拟机中 ,紧接者虚拟机提取其中的类型信息, 并将这些信息存储到方法区。该类型中的类(静态)变量同样也是存储在方法区中。由于所有线程都共享方法区, 因此它们对方法区数据的访问必须被设计为...原创 2018-07-31 11:29:29 · 1387 阅读 · 0 评论 -
java数据类型
Java虚拟机中,数据装型及其运算都是由Java虚拟机规范严格定义的。数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。Java定义了8种基本数值类型:byte、short、int、long、char、float、double和bo...原创 2018-06-30 19:09:58 · 730 阅读 · 0 评论 -
Java虚拟机的简介
Java虚拟机的生命周期一个运行时的Java虚拟机负责运行一个Java程序 。Java虚拟机的主要任务是加载class文件并且执行其中的字节码。Java 虚拟机包含一个类装载器(class loader)。它可以从程序和API中加载class文件。 Java API中只有程序执行时需要的部些类才会被装载 。 当启动一个Java程序时,一个虚拟机实例也就诞生了. 当该程序关闭退出, 这个虚拟机实...翻译 2018-07-31 11:10:40 · 964 阅读 · 1 评论 -
Java体系结构
之前一直在用Java,但对Java的体系结构并不是很了解,最近也是看书才开始关注这方面的内容,做了一些笔记,摘抄给大家共同学习。Java体系结构包括四个独立但相关的技术: Java程序设计语言 Java class文件格式 Java应用编程接口( APl) Java虚拟机当编写并运行一个Java程序时, 就同时用到了这四种技术。 用Java编程语言编写源代码,...翻译 2018-07-19 16:48:35 · 2008 阅读 · 0 评论 -
Java底层学习
最近在看几本Java的书,也做了很多笔记,主要是关于Java虚拟机、Java GC、Java 并发编程等方面,参考的主要几本书籍有:《深入理解Java虚拟机》——周志明《深入理解Java虚拟机 第二版》——美 Bill Venners《Java性能调优指南》——也是老美的《Java高并发程序设计》——葛一鸣本来想自己把这些书的pdf传上来的,可惜已经有人上传了,大家自己去找资源...原创 2018-07-18 21:30:34 · 21916 阅读 · 12 评论