标签:字节码

Java

ASM 匿名内部类 & Lambda 表达式的处理

尖兵 发布于 2020-01-20

简单总结使用 ASM 时遇到匿名内部类时,如何对匿名内部类(一般来说接口)的方法实现插桩。 痛点 通过之前的 当 Java 字节码遇到 ASM 一文,对如何使用 ASM 已经有了初步的了解。这里再来看一种比较特殊的情况,当遇到匿名内部类时,如何确定 hack 结点。 接口作为匿名...

阅读(98)评论(0)赞 (0)

Java

Gradle Transform + ASM 探索

4

hellas 发布于 2020-01-20

使用 Gradle Transform + ASM 实现代码插桩的使用已经非常普遍。本文试图探索如何更加快速简洁的利用 Transform 实现代码插桩,并尝试实现 通过注解对任意类当中所有的方法 实现计算方法耗时 的插桩 通过配置实现对任意类(主要是针对第三方库)当中指定方法的...

阅读(107)评论(0)赞 (0)

Java

Gradle Transform + ASM 探索

4

尖兵 发布于 2020-01-19

使用 Gradle Transform + ASM 实现代码插桩的使用已经非常普遍。本文试图探索如何更加快速简洁的利用 Transform 实现代码插桩,并尝试实现 通过注解对任意类当中所有的方法 实现计算方法耗时 的插桩 通过配置实现对任意类(主要是针对第三方库)当中指定方法的...

阅读(94)评论(0)赞 (0)

Java

你知道什么是Graal VM吗?全栈虚拟机?猛!

6

尖兵 发布于 2020-01-19

世界上最好的语言是java,不服来战!:sunglasses: Java说,总有人想害朕 听说啊,在程序员中一直有这样的一个鄙视链: C 语言工程师鄙视 C++ 工程师,C++ 工程师鄙视 Java 和 C# 工程师,Java 工程师和 C# 工程师则互相鄙视,所有的工程师都鄙视...

阅读(38)评论(0)赞 (0)

Java

Java程序员必备基础:泛型解析

1

yeseng 发布于 2020-01-19

整理了Java泛型的相关知识,算是比较基础的,希望大家一起学习进步。 一、什么是Java泛型 Java 泛型(generics)是 JDK 5 中引入的一个新特性,其本质是参数化类型,解决不确定具体对象类型的问题。其所操作的数据类型被指定为一个参数(type parameter)...

阅读(59)评论(0)赞 (0)

Java

似乎你总也记不住,byte取值范围是 -127~128 还是 -128~127

puefu.he 发布于 2020-01-19

小傅哥 | bugstack.cn 沉淀、分享、成长,专注于原创专题案例,以最易学习编程的方式分享知识,让自己和他人都能有所收获。目前已完成的专题有;Netty4.x实战专题案例、用Java实现JVM、基于JavaAgent的全链路监控、手写RPC框架、架构设计专题案例、源码分析...

阅读(37)评论(0)赞 (0)

Java

使用 Java 实现解析 JVM 字节码结构

changyuan.xu 发布于 2020-01-19

JVM 字节码的存储格式 docs.oracle.com/javase/spec… /** * <pre> * ClassFile { * u4 magic; * u2 minor_version; * u2 major_version; * u2 constant_...

阅读(39)评论(0)赞 (0)

Java

万字精美图文,带你掌握 JVM 内存布局及细节分析

9

xiaoli.he 发布于 2020-01-18

点击上方“ 搜云库技术团队 ”关注,选择“ 设为星标 ” 回复“ 1024 ”或 “ 面试题 ” 获取 4T架构师 资料 前言 本JVM系列属于本人学习过程当中总结的一些知识点,目的是想让读者更快地掌握JVM相关的知识要点,难免会有所侧重,若想要更加系统更加详细的学习JVM知识,...

阅读(41)评论(0)赞 (0)

Java

什么是注解?

6

xubiao.zhuang 发布于 2020-01-18

一、概念 Java 注解是在 JDK5 时引入的新特性,注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便地使用这些数据。注解类型定义指定了一种新的类型,一种特殊的接口类型。 在关键词 interface 前加 @ 符号也就是用 ...

阅读(40)评论(0)赞 (0)

Java

干货!java编码之高效代码汇总

xiaoli.wang 发布于 2020-01-17

世界上只有两种物质:高效率和低效率;世界上只有两种人:高效率的人和低效率的人。——萧伯纳 java酱根据实际经验,查阅了大量资料,总结了"Java高效代码",让每一个Java程序员都能编写出"高效代码"。话不多说,直接干活! 1.常量&am...

阅读(39)评论(0)赞 (0)

Java

头条面试竟然问我maven

3

hanze 发布于 2020-01-17

maven package和maven install 有什么区别? 你常用的maven命令有哪些? <dependencyManagement> 是干什么的? 还有用过其它构建工具吗? 和maven有啥区别? 这几个问题都可以脱口而出,你应该是有点 maven 能耐...

阅读(45)评论(0)赞 (0)

Java

JVM系列七(JIT 即时编译器).

1

wenming.gapo 发布于 2020-01-17

一、概述 即时编译器(Just In Time Compiler),也称为 JIT 编译器,它的主要工作是把热点代码编译成与本地平台相关的机器码,并进行各种层次的优化,从而提高代码执行的效率。 那么什么是热点代码呢?我们知道虚拟机通过解释器(Interpreter)来执行字节码文...

阅读(33)评论(0)赞 (0)

Java

JVM系列(一)——java的类加载机制

1

yanxinchi 发布于 2020-01-17

前言:之前零零碎碎学习过很多jvm相关的知识,由于平时工作业务代码并不会涉及过多jvm底层原理,所以很多知识点看了又忘,忘了又看。这次终于下定决心再来撸一遍,并写下此jvm系列文章。笔者才疏学浅,很多内容通过看书和查阅他人博客获取,在此感谢分享! 1.何为类的加载? 类的加载指的...

阅读(50)评论(0)赞 (0)

Java

[java基本功系列]jvm之不需要死记硬背的jvm基本原理

5

尖兵 发布于 2020-01-16

前言 对基本原理的了解,动手是最好的; 哪里入手 例子 1package com.java.study.jvm; 2 3/** 4 * @author zhangpeng 5 * @since 2020/1/15 3:33 下午 6 */ 7public class JvmHel...

阅读(41)评论(0)赞 (0)

Java

Java中的锁「原理、锁优化、CAS、AQS」

22

zhuangli 发布于 2020-01-16

一、为什么要用锁? 锁-是为了解决并发操作引起的脏读、数据不一致的问题。 二、锁实现的基本原理 2.1、volatile Java编程语言允许线程访问共享变量, 为了确保共享变量能被准确和一致地更新,线程应该确保通过排他锁单独获得这个变量。Java语言提供了volatile,在某...

阅读(57)评论(0)赞 (0)

Java

Java 面试,码农相逢秃者胜

6

小丁 发布于 2020-01-16

每年的年初和年末,都是各家企业比拼年终,各大厂员工炫耀福利的“高光”时刻。 每年这个时候,无数平时很努力的程序员,看着自己年终奖,心里呐喊:明年我要进大厂,我要拿 10 个月年终。 如果,真的要拿到大厂 Offer,除了运气,扎实的基本功才是根本。如果,真想要丰厚的年终,除了努力...

阅读(55)评论(0)赞 (0)

Java

Jvm 相关文章读后感包含一些我的面试经验

2

darida 发布于 2020-01-15

因为文章 https://www.pdai.tech/md/java/JVM/java-JVM-x-overview.html 已经把 JVM 讲得非常详细透彻,这里不再重复造轮子,只是看完后的一些结论和问题(或许还没答案)总结,欢迎各位大佬在评论区留言并提问,我会不定期在评论区...

阅读(49)评论(0)赞 (0)