javajava不能编译成ABI的模式,所以要编译成类似于opcode的字节码的形式才能运行{bytecode:字节码}字节码不是二进制,所以需要特别的解释器才可以运行,即JVM包含四个独立又彼此相关的技术java程序设计语言javaAPIjavaclass文件格式(需要运行在jvm上,java程序编译出来的字节..
分类:
编程语言 时间:
2015-01-05 15:06:51
阅读次数:
203
一、包语句:1、有包名的类的存储目录 如果一个类有包名,就不能再任意存放它,否则虚拟机无法加载这样的类。 程序如果使用了包名:package tom.kepler;(包名就是java文件的路径)。那么存储文件的目录为:...\tom\kepler; 并且编译得到的字节码文件也要在这个目录下(其实.....
分类:
编程语言 时间:
2015-01-05 00:24:43
阅读次数:
452
什么是反射?反射就是将字节码中的各种成分映射到相应的java类中来,java反射技术自JDK1.1以来就出现了,目前大多数流行的框架都采用了这种技术,可见其重要性,这篇文章将详细介绍我对java反射技术的一些研究.代表字节码对象的Classjava中所有的类都有自己特有的一份字节码,当程序调用该类时...
分类:
编程语言 时间:
2015-01-04 12:02:22
阅读次数:
264
Java代码是非常容易反编译的。为了很好的保护Java源代码,我们往往会对编译好的class文件进行混淆处理。
ProGuard是一个混淆代码的开源项目。它的主要作用就是混淆,当然它还能对字节码进行缩减体积、优化等,但那些对于我们来说都算是次要的功能。官网网址是:
http://proguard.sourceforge.net/。...
分类:
移动开发 时间:
2015-01-03 21:06:04
阅读次数:
169
java枚举类型java枚举类型类似java中的普通类,编译后生成.class字节码文件。参考:http://www.cnblogs.com/frankliiu-java/archive/2010/12/07/1898721.htmlhttp://www.cnblogs.com/happyPawpa...
分类:
编程语言 时间:
2015-01-03 11:51:54
阅读次数:
177
Fou循环常常用,但是在字节码层它是怎样执行的呢?出于兴趣驱使,就有了这篇短文了! 首先要分析字节码就得先写个类了,代码如下: public?class?ForTest{
public?static?void?main(String[]?args)?{
f...
分类:
编程语言 时间:
2015-01-02 14:45:18
阅读次数:
217
【import模块】
和C中的#include不同,Python中的import语句并不是简单的把一个文件插入另外一个文件。导入其实是运行时的运算,程序第一次导入指定文件时,会执行以下步骤,
1. 找到模块文件
2. 编译成位码
3. 执行模块中的代码来创建所定义的模块
并生成.pyc字节码文件,这三个步骤只在程序执行时,模块第一次导入时会进行。之后导入相同的模块时,会跳过这三个步骤,而只提取内存中已加载的模块对象,速度要快的多。
【搜索路径】
比如说:import math,不需要加路径和后缀名,系统会...
分类:
编程语言 时间:
2015-01-01 06:44:20
阅读次数:
202
介绍两种获取JAVA对象内存大小的方法。第一种:Instrumentation简介:使用java.lang.instrument 的Instrumentation来获取一个对象的内存大小。利用Instrumentation并且通过代理我们可以监测在JVM运行的程序的功能,它的原理是修改方法的字节码....
分类:
编程语言 时间:
2014-12-31 17:48:58
阅读次数:
154
FindBugs
是一个静态分析工具,它检查类或者 JAR
文件,将字节码与一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况对软件进行分析
第一 手动安装
在Eclipse点击菜单中Help-->菜单
输入地址:
http://findbugs.cs.umd.edu/eclipse,出现...
分类:
数据库 时间:
2014-12-31 01:09:30
阅读次数:
315