字节码javassist 定义属性以及创建方法时多种入参和出参 类型的使用

Posted 九师兄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字节码javassist 定义属性以及创建方法时多种入参和出参 类型的使用相关的知识,希望对你有一定的参考价值。

1.概述

上一篇文章:【字节码】基于javassist的第一个案例helloworld

转载来源于:小傅哥的字节码编程-(公众号:bugstack虫洞栈) 仅供学习。

在上一篇 Helloworld 中,我们初步尝试使用了 Javassist 字节编程的方式,来创建我们的方法体并通过反射调用运行了结果。大致了解到创建在使用字节码编程的时候基本离不开三个核心类;

ClassPool 、 CtClass 、 CtMethod ,它们分别管理着对象容器、类和方法。但是我们还少用一样就是字段; CtFields ,在这一章节中我们不止会使用字段,还会创建多个不同入参类型和返回值的学习。

在学习之前先重点列一下相关的知识点,如下;

  1. CtClass.doubleType 、 intType 、 floatType 等 8 个基本类型和一个 voidType ,也就是空的返回类型。
  2. 传递和返回的是对象类型时,那么需要时用;pool.get(Double.class.getName() ,进行设
    置。
  3. 当需要设置多个入参时,需要在数组中以此设置入参类型; new CtClass[] CtClass.doubleType,

以上是关于字节码javassist 定义属性以及创建方法时多种入参和出参 类型的使用的主要内容,如果未能解决你的问题,请参考以下文章

字节码Javassist 使用Bytecode指令码生成含有自定义注 解的类和方法

Javassist | 字节码增强技术

JAVAssist字节码操作

字节码基于javassist的第一个案例helloworld

字节码增强之Javassist

字节码增强之Javassist