04 2021 档案

摘要:jni 本地方法的总结 1,第一步,javah D:\wksp_study\designbook\target\classes> //clas文件所在目录执行 javah -cp D:\wksp_study\designbook\target\classes jni.ObjTest 2,第二部 拷贝 阅读全文
posted @ 2021-04-30 10:28 张艳涛&java 阅读(649) 评论(0) 推荐(0) 编辑
摘要:第一步,在idea中,编写java文件,并且编译 package jni; public class HelloWorld { static { System.loadLibrary("HelloWorld"); } public native static void say(String cont 阅读全文
posted @ 2021-04-29 14:34 张艳涛&java 阅读(206) 评论(0) 推荐(0) 编辑
摘要:先看代码 package com.zyt.jvmbook; public class Girl extends Person{ public Girl() { int a; } @Override public void sayHello() { System.out.println("girl s 阅读全文
posted @ 2021-04-27 18:40 张艳涛&java 阅读(335) 评论(0) 推荐(0) 编辑
摘要:写一个java文件 public static void main(String[] args) { String str1="abc"; String str2 ="abc"; String str3=new String("abc"); boolean b1= str1==str2; boole 阅读全文
posted @ 2021-04-25 12:13 张艳涛&java 阅读(2197) 评论(0) 推荐(1) 编辑
摘要:源码中对于枚举类型WKID的使用 static bool initialize_wk_klass(WKID id, int init_opt, TRAPS); static void initialize_wk_klasses_until(WKID limit_id, WKID &start_id, 阅读全文
posted @ 2021-04-12 11:26 张艳涛&java 阅读(125) 评论(0) 推荐(0) 编辑
摘要:先打断点systemDictionary.cpp 1915行 Universe::fixup_mirrors(CHECK); 进入 void Universe::fixup_mirrors(TRAPS) { // Bootstrap problem: all classes gets a mirro 阅读全文
posted @ 2021-04-09 18:38 张艳涛&java 阅读(187) 评论(0) 推荐(0) 编辑
摘要:之前分析的已经加载的.Class文件中都没有Static 静态变量,所以也就没这部分的解析,自己也是不懂hotspot 将静态变量放哪里去了,追踪源码之后,看清楚了整个套路,总体上来说,可以举例来说对于,java.lang.String的Class文件进行解析,String类有5个变量,其中有俩个静 阅读全文
posted @ 2021-04-09 17:15 张艳涛&java 阅读(156) 评论(0) 推荐(0) 编辑
摘要:通过前面的分析,创建的insttanceKlass 都没放入了java_lang_Class::fixup_mirror_list()这里类的数组里面了,所有的instance列举如下 list->at(8) $3 = 0x7f6d6800f2b8 "java/lang/Object" (gdb) 阅读全文
posted @ 2021-04-08 11:40 张艳涛&java 阅读(135) 评论(0) 推荐(0) 编辑
摘要:进入 // Methods bool has_final_method = false; AccessFlags promoted_flags; promoted_flags.set_flags(0); Array<Method*>* methods = parse_methods(access_f 阅读全文
posted @ 2021-04-01 11:28 张艳涛&java 阅读(141) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示