標簽:字節碼

Java

用Java實現JVM第三章《解析class文件》附[classReader拆解]

1

Harries 發布于 2019-12-07

按照如下虛擬機規范,本文主要介紹java版本jvm提取class字節碼方式。在java中沒有無符號類型,例如js中byte取值是0~256、java中是-128 ~ +172,所以在實際處理字節碼時[虛擬機規范u1、u2、u4],需要進行轉換。 [java虛擬機規范]每個Clas...

閱讀(6)評論(0)贊 (0)

Java

再談談測試職業發展

xiaoli.wang 發布于 2019-12-07

再談談測試職業發展 有這么個普遍現象 測試招聘者,特別是一、二線互聯網公司的招聘者最苦惱的事兒就是招人。想找到一個合適的人難于上青天,每天各種撒網,簡歷看幾百份,面大幾十人,能撈到一個中意的小伙伴就謝天謝地了。但同時很多測試小伙伴發現找工作很難,特別是進大一點的廠,他們特別挑:代...

閱讀(12)評論(0)贊 (0)

Java

synchronized被這么問,誰能受得了

1

劉莉莉 發布于 2019-12-06

synchronized是面試中經常會被問到的知識點,相關的問題點也很多,問題答案涉及的知識點也很多,有經驗的面試官就會順著你的答案不斷追問一下,下面的對話場景就是相關面試題的連環炮。 面試官:說一下synchronized的作用。 小白:對于單一JVM來說,synchroniz...

閱讀(16)評論(0)贊 (0)

Java

細說JVM內存模型

7

xirruiqiang 發布于 2019-12-06

細說JVM內存模型 前言 在正式學習 JVM 內存模型之前,先注意以下幾個是問題: JVM 內存模型與 JAVA 內存模型不是同一個概念。JVM 內存模型是從運行時數據區的結構的角度描述的概念;而 JAVA 內存模型是從主內存和線程私有內存角度的描述。從以下兩張圖可以看出: ? ...

閱讀(9)評論(0)贊 (0)

Java

一篇文章徹底搞懂volatile關鍵字

8

xiaoli.he 發布于 2019-12-06

volatile關鍵字 和 synchronized關鍵字 一樣,在Java多線程開發中,是一道必須要跨越的檻。之前有篇文章已經分析過 synchronized關鍵字 的原理, synchronized關鍵字的原理 ,這一次,我們來一步一步分析下 volatile關鍵字 的工作原...

閱讀(11)評論(0)贊 (0)

Java

基于QZone dex分包技術的熱修復插件詳解

8

puefu.he 發布于 2019-12-06

關鍵詞 : 重啟生效、反射、類加載 簡介 :QQ空間基于的是 dex 分包方案。把 Bug 方法修復以后,放到一個單獨的 dex 補丁文件,讓程序運行期間加載 dex 補丁,執行修復后的方法。 原理 :如何做到簡介中的描述?在 Android 中所有我們運行期間需要的類都是由 C...

閱讀(10)評論(0)贊 (0)

Java

JAVA和JVM運行原理

4

劉莉莉 發布于 2019-12-05

JVM是java的核心和基礎,在java編譯器和os平臺之間的虛擬處理器。它是一種利用軟件方法實現的抽象的計算機基于下層的操作系統和硬件平臺,可以在上面執行java的字節碼程序。 編譯器負責把Java程序轉成Class文件,方便Jvm來讀取它. Jvm是java虛擬機,其實它就是...

閱讀(14)評論(0)贊 (0)

Java

Java 虛擬機結構

3

likai 發布于 2019-12-05

一 數據類型 與 Java 程序語言中的數據類型相似,Java 虛擬機可以操作的數據類型可分為兩類:原始類型(Primitive Types,也經常翻譯為原生類型或者基本類型)和引用類型(Reference Types)。 與之對應,也存在有原始值(Primitive Value...

閱讀(12)評論(0)贊 (0)

Java

Android ASM框架詳解

7

Harries 發布于 2019-12-05

在上篇文章中,我們以AspectJ為引子介紹了AOP及其設計思想,傳送門Android AspectJ詳解,我們用AspectJ可以方便的實現一些簡單的代碼織入,而不需要關心底層字節碼的實現,而ASM則偏向底層一些,ASM提供的API完全是面向Java字節碼編程,如果你對Java...

閱讀(15)評論(0)贊 (0)

Java

Java 中 RMI、JNDI、LADP、JRMP、JMX、JMS那些事兒(上)

15

yanxinchi 發布于 2019-12-05

作者:[email protected]知道創宇404實驗室 時間:2019年11月4日 之前看了SHIRO-721這個漏洞,然后這個漏洞和SHIRO-550有些關聯,在SHIRO-550的利用方式中又看到了利用ysoserial中的JRMP exploit,然后又想起了RMI、JNDI、LDAP...

閱讀(16)評論(0)贊 (0)

Java

Java JDK 動態代理(AOP)使用及實現原理分析

8

xirruiqiang 發布于 2019-12-05

一、什么是代理? 代理是一種常用的設計模式,其目的就是為其他對象提供一個代理以控制對某個對象的訪問。代理類負責為委托類預處理消息,過濾消息并轉發消息,以及進行消息被委托類執行后的后續處理。 代理模式UML圖: 簡單結構示意圖: 為了保持行為的一致性,代理類和委托類通常會實現相同的...

閱讀(20)評論(0)贊 (0)

Java

GraalVM 19.3 發布,支持 Java 11

1

xiaoli.he 發布于 2019-12-05

多語言虛擬機 GraalVM 為使用多種語言(如 Java、C 語言、Python 和 JavaScript)開發的應用程序提供了共享運行時。最新版本 19.3 已發布,支持 JDK 11。之前的版本基于 JDK 8。 GraalVM 限制支持大量介于 Java 9 和 Java...

閱讀(13)評論(0)贊 (0)

Spring

Spring Boot 中間件開發(一)《服務治理中間件之統一白名單驗證》

1

hanze 發布于 2019-12-04

微信公眾號:bugstack蟲洞棧 & 關注獲取源碼 沉淀、分享、成長,專注于原創專題案例,以最易學習編程的方式分享知識,讓自己和他人都能有所收獲。目前已完成的專題有;Netty4.x實戰專題案例、用Java實現JVM、基于JavaAgent的全鏈路監控、手寫RPC框架、...

閱讀(13)評論(0)贊 (0)

Java

【譯】Kotlin自定義常量應該放在哪里

hellas 發布于 2019-12-04

關于在Kolint中儲存常量,這篇短文講述了一些可供選擇的方案,再者,提出了一些可能會吸引人去踏入的陷阱。但在此之前,讓我們先聊一聊被編譯成Java后的Kotlin Decompiling Kotlin Kotlin的魅力之一就是你能很容易地將一些復雜的代碼簡單化,讓編譯器去代替...

閱讀(13)評論(0)贊 (0)

Java

JDK動態代理和CGLIB字節碼增強

changyuan.xu 發布于 2019-12-03

一、JDK動態代理 Java 在 java.lang.reflect 包中有自己的代理支持,該類(Proxy.java)用于動態生成代理類,只需傳入目標接口、目標接口的類加載器以及 InvocationHandler 便可為目標接口生成代理類及代理對象。我們稱這個Java技術為:...

閱讀(14)評論(0)贊 (0)

Java

【面向面試學習】Java的泛型機制是怎樣的?

zhuangli 發布于 2019-12-03

Java在開發時,通過使用菱形語法< >,使一個類、接口或者方法具有接受泛指的一群類作為參數,泛指的類最終由尖括號里的規則所限定,泛指類通常用大寫字母表示,一般用字母T,后期經過Java編譯器編譯,泛型將被擦除,根據具體使用的類,替換泛型,生成class字節碼,所以泛...

閱讀(19)評論(0)贊 (0)

Java

面試美團,面試官突然問我 Java “鎖” ,我哭了

24

xiaoli.he 發布于 2019-12-03

點擊“ 開發者技術前線 ”,選擇“星標:top:” 13:21 在看|星標|留言,  真愛 本文轉載自「美團技術博客」 前言 Java提供了種類豐富的鎖,每種鎖因其特性的不同,在適當的場景下能夠展現出非常高的效率。本文旨在對鎖相關源碼( 本文中的源碼來自JDK 8 )、...

閱讀(17)評論(0)贊 (0)

Java

探索 Android 內存優化方法

12

puefu.he 發布于 2019-12-03

code小生,一個專注 Android 領域的技術平臺 公眾號回復 Android 加入我的安卓技術群 作者:燈不利多 鏈接:https://juejin.im/post/5d3ada056fb9a07eb94fd1bc 聲明:本文已獲 燈不利多 授權發表,轉發等請聯系原作者授權...

閱讀(14)評論(0)贊 (0)

2013平特肖公式