JVM 基础变量

  • java基本变量值范围
  • 这里写图片描述
    • asm 操作字节码示例
public class Foo {
 static  boolean boolValue;
public static void main(String[] args){
boolValue=true;
if(boolValue) System.out.println("Hello,Java!");
if(boolValue==true)System.out.println("Hello,JVM!");
}
}

$ java -cp /pt/java/asmtools.jar  org.openjdk.asmtools.jdis.Main Foo.class > Foo.jasm.1
// 将class 文件转译为jasm文件
$ awk 'NR==1,/iconst_1/{sub(/iconst_1/, "iconst_2")} 1' Foo.jasm.1 > Foo.jasm
// NR==1 代表从第一行开始搜索, iconst 是jvm指令,即给常量赋值。iconst_1 即代表常量值为1,_2 代表为2 
//上述命令的意思就是 从Foo.jasm.1 搜索到第一个iconst_1将其替换为iconst_2 生成Foo.jasm文件。
$ java -jar /pt/java/asmtools-7.0-build/release/lib/asmtools.jar jasm Foo.jasm
// 使用Foo.jasm 重新编译Foo类。
$ java Foo
  • boolean 类型,在虚拟机里Boolean类型true为1,false为0,如果数值转换为true,将进行掩码操作,即取数值的最后一位,比如2为0,3为1。
  • 从低到高,值范围依次扩大,默认值在内存中都是0。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值