Java
lining-breezy
互联网移动开发
展开
-
Java 内存模型
1、内存分类A、主内存(可以理解为内存条)B、线程的工作内存C、处理器的高速缓存方法的参数、局部变量,仅仅保存在线程的工作内存中。使用的对象变量,也是主内存对象的副本。不同的线程之间的工作内存 不能直接访问。线程之间的变量,必须传递到朱内存中,才能完成数据传递。2、内存操作此处说得操作,设计到主内存、线程工作内存A、lock(锁) 概念适用于主内存,表示原创 2017-05-08 16:09:09 · 177 阅读 · 0 评论 -
JAVA 内存划分
1、总体结构图(图来自网络)2、运行时介绍A、程序计数器(线程私有)由于一个CPU可以有多个线程执行,每一个时刻,仅仅有一个线程得到执行,其他线程保持 切换之前的状态(比如线程下一条执行指令的行号等),便于线程得到时间片之后,恢复执行。那么,用于保存线程执行状态的就是程序计数器。每一个线程都有一个独立的程序计数器。是线程私有的内存单元。当线程执行的是java程序时,原创 2017-05-09 11:05:42 · 266 阅读 · 0 评论 -
Java逆向技术
1、工具A、jd-gui 反编译jar,查看class文件的对应的源码,通过命令 apktool d my.apk 反编译apk文件,解压之后,可以查看AndroidManisfast.xml文件等配置信息,res资源,asset资源等。通过命令sh dex2jar.sh classes.dex将apk文件中解压出来的dex文件转换为jar文件。然后通过jd-gui可以打开j原创 2017-07-18 16:11:13 · 1397 阅读 · 0 评论 -
Java逆向工具汇总
1、jd-guiA、可以将apk文件解压,解压之后,可以查看AndroidManisfast文件的源码。B、可以讲dex文件转换为jar文件,查看java源代码2、jclasslibA、可以查看class文件的结构,比如方法区、常量池、Fields等。B、定位到需要修改的常量,可以通过class文件替换的方式(需要自己读取class文件、修改、覆盖到对应的jar包),修原创 2017-07-19 14:12:35 · 3824 阅读 · 0 评论