Java反编译器剖析】的更多相关文章

转自:http://www.blogjava.net/xmatthew/archive/2008/10/28/237203.html 推荐一款Java反编译器,也使用了挺久的了,感觉还是很好用,就拿出和大家分享一下.这款反编译器叫 "Java Decompiler", 由 Pavel Kouznetsov开发,目前最新版本为0.2.5.它由 C++开发,并且官方可以下载 windows.linux和苹果Mac Os三个平台的可执行程序. 本地windows版本下载 本人之所以认为它还不…
JAVA语言是1995年5月由SUN公司发布的,由于其安全性高.代码优化.跨平台等特性,迅速取代了很多传统高级语言,占据了企业级网络应用开发等诸多领域的霸主地位.         不过,JAVA最突出的跨平台优势使得它不能被编译成本地代码,而要以中间代码的形式运行在虚拟机环境中,这使得JAVA的反编译要比别的高级语言容易实现,并且反编译的代码经过优化后几乎可以与源代码相媲美.     为了更好地保护知识产权,避免本公司的智力成果轻易被人窃取,开发者有必要对反编译工具深入了解,以便有针对性地采取保…
Java基础-使用JAVA代码剖析MD5算法实现过程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.…
转自:http://www.blogjava.net/xmatthew/archive/2008/10/28/237203.html 推荐一款Java反编译器,也使用了挺久的了,感觉还是很好用,就拿出和大家分享一下.这款反编译器叫 "Java Decompiler", 由 Pavel Kouznetsov开发,目前最新版本为0.2.5.它由 C++开发,并且官方可以下载 windows.linux和苹果Mac Os三个平台的可执行程序. 本地windows版本下载 本人之所以认为它还不…
问题的缘由源自于一道简单的面试题:题目要求如下: 建立三个线程,A线程打印10次A,B线程打印10次B,C线程打印10次C,要求线程同时运行,交替打印10次ABC. 解决问题前我们前补充一些基本知识: Runnable和Thread 线程的启动 线程的起动并不是简单的调用了你的RUN方法,而是由一个线程调度器来分别调用你的所有线程的RUN方法,我们普通的RUN方法如果没有执行完是不会返回的,也就是会一直执行下去,这样RUN方法下面的方法就不可能会执行了,可是线程里的RUN方法却不一样,它只有一定…
定点数表达法的缺点在于其形式过于僵硬,固定的小数点位置决定了固定位数的整数部分和小数部分,不利于同时表达特别大的数或者特别小的数.计算机系统采纳了所谓的浮点数表达方式.这种表达方式利用科学计数法来表达实数,即用一个尾数(Mantissa也叫有效数字 ),一个基数(Base),一个指数(Exponent)以及 一个表示正负的符号来表达实数.浮点数利用指数达到了浮动小数点的效果,从而可以灵活地表达更大范围的实数. 当一个浮点数的尾数为0,不论其阶码为何值,该浮点数的值都为0.当阶码的值为它能表示的最…
线程的状态: 线程共有下面4种状态: 新建状态(New): 新创建了一个线程对象,当你用new创建一个线程时,该线程尚未运行. 就绪状态(Runnable): 线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权. 运行状态(Running): 就绪状态的线程获取了CPU,执行程序代码. 阻塞状态(Blocked): 阻塞状态是线程因为某种原因放弃CPU使用权,暂时停止运行.直到线程进入就绪状态,才有机会转到运行状态. 阻塞…
匿名内部类介绍: 匿名内部类也就是没有名字的内部类 正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写 但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 匿名内部类的声明格式如下: new ParentName(){ ...// 内部类的定义 } 匿名内部类的使用场景: .只用到类的一个实例 . ·类在定义后马上用到. ·类非常小(SUN推荐是在4行代码以下) ·给类命名并不会导致你的代码更容易被理解. 匿名内部类的使用原则: ·匿名内部类不能有构造方法. ·匿名内…
什么是内部类: 定义在其他类(outer class)中的类被称作内部类.内部类可以有访问修饰服,甚至可以被标记为 abstract 或 final. 内部类与外部类实例有特殊的关系,这种关系允许内部类访问外部类的成员,也包括私有成员. 内部类分为以下四种: 内部类(inner class) 局部内部类 匿名内部类 静态嵌套类 为什么要使用内部类: 在<Think in Java>中有这样一句话: 使用内部类最吸引人的原因是:每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继…
一时手残,把java工程中的源文件给删了,幸亏还有.class文件,想起java可以反编译,所以试一试. JD-Eclipse 如果是使用Eclipse的话,可以用Eclipse插件JadClipse,JadClipse提供一个class文件查看器可以直接打开class文件查看其反编译后的源代码.但是我没有找到win10版本,所以下载了jad158e.linux.intel,在wsl环境下运行,提示没有找到jad命令. JD-Core JD-Core支持Java 5的新特性,如enum等,而且它…