通过cmd命令Windows系统下查看Java字节码方式
GenParameterTypeDemo
这个类的简单方法签名。
首先打开cmd运行,打开命令提示符页面
使用cd 文件原路径
进入到文件夹下
使用javap 类路径
就能获取到简单方法签名
D:\idea_project\spring\deepinjava\state-1\lesson-3\target\classes>javap com.segmentfault.deep.in.java.generic.GenParameterTypeDemo
Compiled from "GenParameterTypeDemo.java"
public class com.segmentfault.deep.in.java.generic.GenParameterTypeDemo {
public com.segmentfault.deep.in.java.generic.GenParameterTypeDemo();
public static void main(java.lang.String[]);
public static <C extends java.util.Collection<E>, E extends java.io.Serializable> void add(C, E);
public static <C extends java.lang.Iterable<E>, E extends java.io.Serializable> void forEach(C, java.util.function.Consumer<E>);
}
如果想获取详细字节码,使用javap -v 类路径
即可
D:\idea_project\spring\deepinjava\state-1\lesson-3\target\classes>javap -v com.segmentfault.deep.in.java.generic.GenParameterTypeDemo
Classfile /D:/idea_project/spring/deepinjava/state-1/lesson-3/target/classes/com/segmentfault/deep/in/java/generic/GenParameterTypeDemo.class
Last modified 2019-3-12; size 3915 bytes
MD5 checksum 39cba996bfa5b91a83c354ca42ba393d
Compiled from "GenParameterTypeDemo.java"
public class com.segmentfault.deep.in.java.generic.GenParameterTypeDemo
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_SUPER
Constant pool:
#1 = Methodref #30.#85 // java/lang/Object."<init>":()V
#2 = Class #86 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container
#3 = String #87 // String
#4 = Methodref #2.#88 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container."<init>":(Ljava/lang/CharSequence;)V
#5 = String #89 // Hello,World
#6 = Fieldref #90.#91 // java/lang/System.out:Ljava/io/PrintStream;
#7 = Methodref #2.#92 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container.getElement:()Ljava/lang/CharSequence;
#8 = Methodref #93.#94 // java/io/PrintStream.println:(Ljava/lang/Object;)V
#9 = Class #95 // java/lang/StringBuffer
#10 = String #96 // 2019
#11 = Methodref #9.#97 // java/lang/StringBuffer."<init>":(Ljava/lang/String;)V
#12 = Methodref #2.#98 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container.setElement:(Ljava/lang/CharSequence;)V
#13 = Class #99 // java/util/ArrayList
#14 = Methodref #13.#85 // java/util/ArrayList."<init>":()V
#15 = Methodref #29.#100 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo.add:(Ljava/util/Collection;Ljava/io/Serializable;)V
#16 = Methodref #101.#102 // java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
#17 = Class #103 // java/util/HashSet
#18 = Methodref #17.#85 // java/util/HashSet."<init>":()V
#19 = Class #104 // java/io/Serializable
#20 = Methodref #105.#106 // java/util/Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
#21 = Methodref #30.#107 // java/lang/Object.getClass:()Ljava/lang/Class;
#22 = InvokeDynamic #0:#113 // #0:accept:(Ljava/io/PrintStream;)Ljava/util/function/Consumer;
#23 = Methodref #29.#114 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo.forEach:(Ljava/lang/Iterable;Ljava/util/function/Consumer;)V
#24 = InterfaceMethodref #115.#116 // java/util/Collection.add:(Ljava/lang/Object;)Z
#25 = InterfaceMethodref #117.#118 // java/lang/Iterable.iterator:()Ljava/util/Iterator;
#26 = InterfaceMethodref #119.#120 // java/util/Iterator.hasNext:()Z
#27 = InterfaceMethodref #119.#121 // java/util/Iterator.next:()Ljava/lang/Object;
#28 = InterfaceMethodref #122.#123 // java/util/function/Consumer.accept:(Ljava/lang/Object;)V
#29 = Class #124 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo
#30 = Class #125 // java/lang/Object
#31 = Class #126 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$TClass
#32 = Utf8 TClass
#33 = Utf8 InnerClasses
#34 = Class #127 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Template
#35 = Utf8 Template
#36 = Class #128 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$I2
#37 = Utf8 I2
#38 = Class #129 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$I
#39 = Utf8 I
#40 = Class #130 // com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$C
#41 = Utf8 C
#42 = Utf8 Container
#43 = Utf8 <init>
#44 = Utf8 ()V
#45 = Utf8 Code
#46 = Utf8 LineNumberTable
#47 = Utf8 LocalVariableTable
#48 = Utf8 this
#49 = Utf8 Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo;
#50 = Utf8 main
#51 = Utf8 ([Ljava/lang/String;)V
#52 = Utf8 args
#53 = Utf8 [Ljava/lang/String;
#54 = Utf8 a
#55 = Utf8 Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container;
#56 = Utf8 c
#57 = Utf8 c2
#58 = Utf8 LocalVariableTypeTable
#59 = Utf8 Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container<Ljava/lang/String;>;
#60 = Utf8 Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container<Ljava/lang/StringBuffer;>;
#61 = Utf8 Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container<Ljava/lang/StringBuilder;>;
#62 = Utf8 add
#63 = Utf8 (Ljava/util/Collection;Ljava/io/Serializable;)V
#64 = Utf8 target
#65 = Utf8 Ljava/util/Collection;
#66 = Utf8 element
#67 = Utf8 Ljava/io/Serializable;
#68 = Utf8 TC;
#69 = Utf8 TE;
#70 = Utf8 Signature
#71 = Utf8 <C::Ljava/util/Collection<TE;>;E::Ljava/io/Serializable;>(TC;TE;)V
#72 = Utf8 forEach
#73 = Utf8 (Ljava/lang/Iterable;Ljava/util/function/Consumer;)V
#74 = Utf8 e
#75 = Utf8 source
#76 = Utf8 Ljava/lang/Iterable;
#77 = Utf8 consumer
#78 = Utf8 Ljava/util/function/Consumer;
#79 = Utf8 Ljava/util/function/Consumer<TE;>;
#80 = Utf8 StackMapTable
#81 = Class #131 // java/util/Iterator
#82 = Utf8 <C::Ljava/lang/Iterable<TE;>;E::Ljava/io/Serializable;>(TC;Ljava/util/function/Consumer<TE;>;)V
#83 = Utf8 SourceFile
#84 = Utf8 GenParameterTypeDemo.java
#85 = NameAndType #43:#44 // "<init>":()V
#86 = Utf8 com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container
#87 = Utf8 String
#88 = NameAndType #43:#132 // "<init>":(Ljava/lang/CharSequence;)V
#89 = Utf8 Hello,World
#90 = Class #133 // java/lang/System
#91 = NameAndType #134:#135 // out:Ljava/io/PrintStream;
#92 = NameAndType #136:#137 // getElement:()Ljava/lang/CharSequence;
#93 = Class #138 // java/io/PrintStream
#94 = NameAndType #139:#140 // println:(Ljava/lang/Object;)V
#95 = Utf8 java/lang/StringBuffer
#96 = Utf8 2019
#97 = NameAndType #43:#141 // "<init>":(Ljava/lang/String;)V
#98 = NameAndType #142:#132 // setElement:(Ljava/lang/CharSequence;)V
#99 = Utf8 java/util/ArrayList
#100 = NameAndType #62:#63 // add:(Ljava/util/Collection;Ljava/io/Serializable;)V
#101 = Class #143 // java/lang/Integer
#102 = NameAndType #144:#145 // valueOf:(I)Ljava/lang/Integer;
#103 = Utf8 java/util/HashSet
#104 = Utf8 java/io/Serializable
#105 = Class #146 // java/util/Arrays
#106 = NameAndType #147:#148 // asList:([Ljava/lang/Object;)Ljava/util/List;
#107 = NameAndType #149:#150 // getClass:()Ljava/lang/Class;
#108 = Utf8 BootstrapMethods
#109 = MethodHandle #6:#151 // invokestatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
#110 = MethodType #140 // (Ljava/lang/Object;)V
#111 = MethodHandle #5:#8 // invokevirtual java/io/PrintStream.println:(Ljava/lang/Object;)V
#112 = MethodType #152 // (Ljava/io/Serializable;)V
#113 = NameAndType #153:#154 // accept:(Ljava/io/PrintStream;)Ljava/util/function/Consumer;
#114 = NameAndType #72:#73 // forEach:(Ljava/lang/Iterable;Ljava/util/function/Consumer;)V
#115 = Class #155 // java/util/Collection
#116 = NameAndType #62:#156 // add:(Ljava/lang/Object;)Z
#117 = Class #157 // java/lang/Iterable
#118 = NameAndType #158:#159 // iterator:()Ljava/util/Iterator;
#119 = Class #131 // java/util/Iterator
#120 = NameAndType #160:#161 // hasNext:()Z
#121 = NameAndType #162:#163 // next:()Ljava/lang/Object;
#122 = Class #164 // java/util/function/Consumer
#123 = NameAndType #153:#140 // accept:(Ljava/lang/Object;)V
#124 = Utf8 com/segmentfault/deep/in/java/generic/GenParameterTypeDemo
#125 = Utf8 java/lang/Object
#126 = Utf8 com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$TClass
#127 = Utf8 com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Template
#128 = Utf8 com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$I2
#129 = Utf8 com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$I
#130 = Utf8 com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$C
#131 = Utf8 java/util/Iterator
#132 = Utf8 (Ljava/lang/CharSequence;)V
#133 = Utf8 java/lang/System
#134 = Utf8 out
#135 = Utf8 Ljava/io/PrintStream;
#136 = Utf8 getElement
#137 = Utf8 ()Ljava/lang/CharSequence;
#138 = Utf8 java/io/PrintStream
#139 = Utf8 println
#140 = Utf8 (Ljava/lang/Object;)V
#141 = Utf8 (Ljava/lang/String;)V
#142 = Utf8 setElement
#143 = Utf8 java/lang/Integer
#144 = Utf8 valueOf
#145 = Utf8 (I)Ljava/lang/Integer;
#146 = Utf8 java/util/Arrays
#147 = Utf8 asList
#148 = Utf8 ([Ljava/lang/Object;)Ljava/util/List;
#149 = Utf8 getClass
#150 = Utf8 ()Ljava/lang/Class;
#151 = Methodref #165.#166 // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
#152 = Utf8 (Ljava/io/Serializable;)V
#153 = Utf8 accept
#154 = Utf8 (Ljava/io/PrintStream;)Ljava/util/function/Consumer;
#155 = Utf8 java/util/Collection
#156 = Utf8 (Ljava/lang/Object;)Z
#157 = Utf8 java/lang/Iterable
#158 = Utf8 iterator
#159 = Utf8 ()Ljava/util/Iterator;
#160 = Utf8 hasNext
#161 = Utf8 ()Z
#162 = Utf8 next
#163 = Utf8 ()Ljava/lang/Object;
#164 = Utf8 java/util/function/Consumer
#165 = Class #167 // java/lang/invoke/LambdaMetafactory
#166 = NameAndType #168:#171 // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
#167 = Utf8 java/lang/invoke/LambdaMetafactory
#168 = Utf8 metafactory
#169 = Class #173 // java/lang/invoke/MethodHandles$Lookup
#170 = Utf8 Lookup
#171 = Utf8 (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
#172 = Class #174 // java/lang/invoke/MethodHandles
#173 = Utf8 java/lang/invoke/MethodHandles$Lookup
#174 = Utf8 java/lang/invoke/MethodHandles
{
public com.segmentfault.deep.in.java.generic.GenParameterTypeDemo();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
4: return
LineNumberTable:
line 10: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
0: new #2 // class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container
3: dup
4: ldc #3 // String String
6: invokespecial #4 // Method com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container."<init>":(Ljava/lang/CharSequence;)V
9: astore_1
10: new #2 // class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container
13: dup
14: ldc #5 // String Hello,World
16: invokespecial #4 // Method com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container."<init>":(Ljava/lang/CharSequence;)V
19: astore_2
20: new #2 // class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container
23: dup
24: ldc #5 // String Hello,World
26: invokespecial #4 // Method com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container."<init>":(Ljava/lang/CharSequence;)V
29: astore_3
30: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;
33: aload_2
34: invokevirtual #7 // Method com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container.getElement:()Ljava/lang/CharSequence;
37: invokevirtual #8 // Method java/io/PrintStream.println:(Ljava/lang/Object;)V
40: aload_2
41: new #9 // class java/lang/StringBuffer
44: dup
45: ldc #10 // String 2019
47: invokespecial #11 // Method java/lang/StringBuffer."<init>":(Ljava/lang/String;)V
50: invokevirtual #12 // Method com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container.setElement:(Ljava/lang/CharSequence;)V
53: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;
56: aload_2
57: invokevirtual #7 // Method com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container.getElement:()Ljava/lang/CharSequence;
60: invokevirtual #8 // Method java/io/PrintStream.println:(Ljava/lang/Object;)V
63: new #13 // class java/util/ArrayList
66: dup
67: invokespecial #14 // Method java/util/ArrayList."<init>":()V
70: ldc #5 // String Hello,World
72: invokestatic #15 // Method add:(Ljava/util/Collection;Ljava/io/Serializable;)V
75: new #13 // class java/util/ArrayList
78: dup
79: invokespecial #14 // Method java/util/ArrayList."<init>":()V
82: iconst_1
83: invokestatic #16 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
86: invokestatic #15 // Method add:(Ljava/util/Collection;Ljava/io/Serializable;)V
89: new #17 // class java/util/HashSet
92: dup
93: invokespecial #18 // Method java/util/HashSet."<init>":()V
96: iconst_2
97: invokestatic #16 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
100: invokestatic #15 // Method add:(Ljava/util/Collection;Ljava/io/Serializable;)V
103: iconst_3
104: anewarray #19 // class java/io/Serializable
107: dup
108: iconst_0
109: iconst_1
110: invokestatic #16 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
113: aastore
114: dup
115: iconst_1
116: iconst_2
117: invokestatic #16 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
120: aastore
121: dup
122: iconst_2
123: iconst_4
124: invokestatic #16 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
127: aastore
128: invokestatic #20 // Method java/util/Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
131: getstatic #6 // Field java/lang/System.out:Ljava/io/PrintStream;
134: dup
135: invokevirtual #21 // Method java/lang/Object.getClass:()Ljava/lang/Class;
138: pop
139: invokedynamic #22, 0 // InvokeDynamic #0:accept:(Ljava/io/PrintStream;)Ljava/util/function/Consumer;
144: invokestatic #23 // Method forEach:(Ljava/lang/Iterable;Ljava/util/function/Consumer;)V
147: return
LineNumberTable:
line 12: 0
line 23: 10
line 24: 20
line 26: 30
line 29: 40
line 30: 53
line 33: 63
line 34: 75
line 35: 89
line 37: 103
line 38: 147
LocalVariableTable:
Start Length Slot Name Signature
0 148 0 args [Ljava/lang/String;
10 138 1 a Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container;
20 128 2 c Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container;
30 118 3 c2 Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container;
LocalVariableTypeTable:
Start Length Slot Name Signature
10 138 1 a Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container<Ljava/lang/String;>;
20 128 2 c Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container<Ljava/lang/StringBuffer;>;
30 118 3 c2 Lcom/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container<Ljava/lang/StringBuilder;>;
public static <C extends java.util.Collection<E>, E extends java.io.Serializable> void add(C, E);
descriptor: (Ljava/util/Collection;Ljava/io/Serializable;)V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
0: aload_0
1: aload_1
2: invokeinterface #24, 2 // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
7: pop
8: return
LineNumberTable:
line 79: 0
line 80: 8
LocalVariableTable:
Start Length Slot Name Signature
0 9 0 target Ljava/util/Collection;
0 9 1 element Ljava/io/Serializable;
LocalVariableTypeTable:
Start Length Slot Name Signature
0 9 0 target TC;
0 9 1 element TE;
Signature: #71 // <C::Ljava/util/Collection<TE;>;E::Ljava/io/Serializable;>(TC;TE;)V
public static <C extends java.lang.Iterable<E>, E extends java.io.Serializable> void forEach(C, java.util.function.Consumer<E>);
descriptor: (Ljava/lang/Iterable;Ljava/util/function/Consumer;)V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=2
0: aload_0
1: invokeinterface #25, 1 // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
6: astore_2
7: aload_2
8: invokeinterface #26, 1 // InterfaceMethod java/util/Iterator.hasNext:()Z
13: ifeq 36
16: aload_2
17: invokeinterface #27, 1 // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
22: checkcast #19 // class java/io/Serializable
25: astore_3
26: aload_1
27: aload_3
28: invokeinterface #28, 2 // InterfaceMethod java/util/function/Consumer.accept:(Ljava/lang/Object;)V
33: goto 7
36: return
LineNumberTable:
line 84: 0
line 85: 26
line 86: 33
line 87: 36
LocalVariableTable:
Start Length Slot Name Signature
26 7 3 e Ljava/io/Serializable;
0 37 0 source Ljava/lang/Iterable;
0 37 1 consumer Ljava/util/function/Consumer;
LocalVariableTypeTable:
Start Length Slot Name Signature
26 7 3 e TE;
0 37 0 source TC;
0 37 1 consumer Ljava/util/function/Consumer<TE;>;
StackMapTable: number_of_entries = 2
frame_type = 252 /* append */
offset_delta = 7
locals = [ class java/util/Iterator ]
frame_type = 250 /* chop */
offset_delta = 28
Signature: #82 // <C::Ljava/lang/Iterable<TE;>;E::Ljava/io/Serializable;>(TC;Ljava/util/function/Consumer<TE;>;)V
}
SourceFile: "GenParameterTypeDemo.java"
InnerClasses:
public static #32= #31 of #29; //TClass=class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$TClass of class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo
public static #35= #34 of #29; //Template=class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Template of class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo
public static #37= #36 of #29; //I2=class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$I2 of class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo
public static #39= #38 of #29; //I=class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$I of class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo
public static #41= #40 of #29; //C=class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$C of class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo
public static #42= #2 of #29; //Container=class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo$Container of class com/segmentfault/deep/in/java/generic/GenParameterTypeDemo
public static final #170= #169 of #172; //Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles
BootstrapMethods:
0: #109 invokestatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
#110 (Ljava/lang/Object;)V
#111 invokevirtual java/io/PrintStream.println:(Ljava/lang/Object;)V
#112 (Ljava/io/Serializable;)V