简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
写在前面的话:首先需要明确一个前提,我们介绍的 Kotlin 是 Kotlin for JVM ,这也是 Kotlin 使用最广泛的地方。Kotlin 代码最终编译后的产物是 Java class 字节码,也就是遵循 Java 虚拟机规范。所以,我们在介绍原理的时候 ,通常会反编译 Kotlin 代码,明白这些语法糖背后对应的其实就是类似 Java 代码来实现的,如果你熟悉 Java 语言,那么我
本文详细介绍了 JVM 关于 Garbage Collection 相关的知识点。读完本文相信你对 JVM 的垃圾回收机制有一个全面而系统的了解。
本文详细介绍了对象的创建过程如类的加载、内存的分配和初始化,分配内存时的同步方式,对象的初始化操作。还介绍了对象的内存布局,如对象头、实例数据、对齐填充。最后介绍了 Hotspot 如何进行对象的访问定位。
本文详细介绍了类的加载过程:加载、验证、准备、解析、初始化,重点介绍了和我们开发息息相关的类加载器,类加载器死锁问题。
今天搭建Hadoop环境,在虚拟机中安装了Ubuntu系统,但是Windows系统不能给虚拟机系统传输文件,很是不方便。在网上找了很久,也是过了很多办法,但是下面的方式是可行的,希望对读者有帮助。 第一步:进入系统后,点击虚拟机上的安装vmware tools,回到桌面回看到一个vmware tools的cdrom图标。第二步:打开它,复制“vmwaretools....ta...
本文详细介绍了 Java 内存区域结构,方法的调用及方法调用的指令,方法重载解析及动态分派的实现原理,还介绍了 Java 对动态类型的支持。最后介绍基于栈的指令集和基于寄存器的指令集的区别。
本文详细介绍了 Java 中的常量和字面量的区别,字节码中的常量池和运行时常量池的区别,最后详细介绍了字符串常量池和 String.intern 方法
本文分析了字节码文件的组成,如魔数、字节码版本、常量池、字段、方法、属性等,还介绍了 invokeDynamic 指令,并分析了其实现原理;接着分析了字节码指令集, 并通过一个案例分析了其对应的指令,每执行完一个指令,展示其对应的操作数栈和局部变量表的情况。最后通过分析字节码的方式知道实际开发工作,加深对 Java 语言的理解深度,帮助我们编写更好的 Java 代码。
在阿里云上了买了一个云服务器,部署了一个程序,发现插入数据库后乱码了,都成了 '????'.一开始怀疑是 Tomcat7 的原因 。然后输出,在 XShell 命令窗口还是输出乱码,把 XShell 窗口设置utf-8 ,发现窗口输出正常. 最后判定是 Mysql 数据的问题 :通过命令:SHOW VARIABLES LIKE 'character%' 最终发现 :chara...
在实际开发中我们常常需要inflate要给布局然后添加到某个布局容器里面去, 要把xml布局文件转成一个View对象 需要使用LayoutInflater.inflate方法. 在开发中常常使用如下几种方式:inflater.inflate(layoutId, null);inflater.inflate(layoutId, root,false);inflater.inflate(layout