⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 select.html

📁 一个用于对.class文件进行插桩的开源工具
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd"><!--NewPage--><HTML><HEAD><!-- Generated by javadoc on Sat Dec 15 07:40:16 EST 2001 --><TITLE>bcel API: Class  Select</TITLE><LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style"></HEAD><BODY BGCOLOR="white"><!-- ========== START OF NAVBAR ========== --><A NAME="navbar_top"><!-- --></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0"><TR><TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">  <TR ALIGN="center" VALIGN="top">  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Select.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>  </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">&nbsp;<A HREF="../../../../org/apache/bcel/generic/SASTORE.html"><B>PREV CLASS</B></A>&nbsp;&nbsp;<A HREF="../../../../org/apache/bcel/generic/SIPUSH.html"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">  <A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;&nbsp;<A HREF="Select.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD></TR></TABLE><!-- =========== END OF NAVBAR =========== --><HR><!-- ======== START OF CLASS DATA ======== --><H2><FONT SIZE="-1">org.apache.bcel.generic</FONT><BR>Class  Select</H2><PRE>java.lang.Object  |  +--<A HREF="../../../../org/apache/bcel/generic/Instruction.html">org.apache.bcel.generic.Instruction</A>        |        +--<A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html">org.apache.bcel.generic.BranchInstruction</A>              |              +--<B>org.apache.bcel.generic.Select</B></PRE><DL><DT><B>All Implemented Interfaces:</B> <DD>java.lang.Cloneable, <A HREF="../../../../org/apache/bcel/generic/InstructionTargeter.html">InstructionTargeter</A>, java.io.Serializable, <A HREF="../../../../org/apache/bcel/generic/StackProducer.html">StackProducer</A>, <A HREF="../../../../org/apache/bcel/generic/VariableLengthInstruction.html">VariableLengthInstruction</A></DD></DL><DL><DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../org/apache/bcel/generic/LOOKUPSWITCH.html">LOOKUPSWITCH</A>, <A HREF="../../../../org/apache/bcel/generic/TABLESWITCH.html">TABLESWITCH</A></DD></DL><HR><DL><DT>public abstract class <B>Select</B><DT>extends <A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html">BranchInstruction</A><DT>implements <A HREF="../../../../org/apache/bcel/generic/VariableLengthInstruction.html">VariableLengthInstruction</A>, <A HREF="../../../../org/apache/bcel/generic/StackProducer.html">StackProducer</A></DL><P>Select - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions.<P><DL><DT><B>Version: </B><DD>$Id: Select.java,v 1.1.1.1 2001/10/29 20:00:27 jvanzyl Exp $</DD><DT><B>Author: </B><DD><A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A></DD><DT><B>See Also: </B><DD><A HREF="../../../../org/apache/bcel/generic/LOOKUPSWITCH.html"><CODE>LOOKUPSWITCH</CODE></A>, <A HREF="../../../../org/apache/bcel/generic/TABLESWITCH.html"><CODE>TABLESWITCH</CODE></A>, <A HREF="../../../../org/apache/bcel/generic/InstructionList.html"><CODE>InstructionList</CODE></A>, <A HREF="../../../../serialized-form.html#org.apache.bcel.generic.Select">Serialized Form</A></DL><HR><P><!-- ======== INNER CLASS SUMMARY ======== --><!-- =========== FIELD SUMMARY =========== --><A NAME="field_summary"><!-- --></A><TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Field Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected &nbsp;int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#fixed_length">fixed_length</A></B></CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected &nbsp;int[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#indices">indices</A></B></CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected &nbsp;int[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#match">match</A></B></CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected &nbsp;int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#match_length">match_length</A></B></CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected &nbsp;int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#padding">padding</A></B></CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected &nbsp;<A HREF="../../../../org/apache/bcel/generic/InstructionHandle.html">InstructionHandle</A>[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#targets">targets</A></B></CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR></TABLE>&nbsp;<A NAME="fields_inherited_from_class_org.apache.bcel.generic.BranchInstruction"><!-- --></A><TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"><TD><B>Fields inherited from class org.apache.bcel.generic.<A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html">BranchInstruction</A></B></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE><A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html#index">index</A>, <A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html#position">position</A>, <A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html#target">target</A></CODE></TD></TR></TABLE>&nbsp;<A NAME="fields_inherited_from_class_org.apache.bcel.generic.Instruction"><!-- --></A><TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"><TD><B>Fields inherited from class org.apache.bcel.generic.<A HREF="../../../../org/apache/bcel/generic/Instruction.html">Instruction</A></B></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE><A HREF="../../../../org/apache/bcel/generic/Instruction.html#length">length</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#opcode">opcode</A></CODE></TD></TR></TABLE>&nbsp;<!-- ======== CONSTRUCTOR SUMMARY ======== --><!-- ========== METHOD SUMMARY =========== --><A NAME="method_summary"><!-- --></A><TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Method Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;boolean</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#containsTarget(org.apache.bcel.generic.InstructionHandle)">containsTarget</A></B>(<A HREF="../../../../org/apache/bcel/generic/InstructionHandle.html">InstructionHandle</A>&nbsp;ih)</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#dump(java.io.DataOutputStream)">dump</A></B>(java.io.DataOutputStream&nbsp;out)</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Dump instruction as byte code to stream out.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;int[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#getIndices()">getIndices</A></B>()</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;int[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#getMatchs()">getMatchs</A></B>()</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;<A HREF="../../../../org/apache/bcel/generic/InstructionHandle.html">InstructionHandle</A>[]</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#getTargets()">getTargets</A></B>()</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected &nbsp;void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#initFromFile(org.apache.bcel.util.ByteSequence, boolean)">initFromFile</A></B>(<A HREF="../../../../org/apache/bcel/util/ByteSequence.html">ByteSequence</A>&nbsp;bytes,             boolean&nbsp;wide)</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read needed data (e.g.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#setTarget(int, org.apache.bcel.generic.InstructionHandle)">setTarget</A></B>(int&nbsp;i,          <A HREF="../../../../org/apache/bcel/generic/InstructionHandle.html">InstructionHandle</A>&nbsp;target)</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set branch target for `i'th case</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;java.lang.String</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#toString(boolean)">toString</A></B>(boolean&nbsp;verbose)</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Long output format: &lt;position in byte code&gt; &lt;name of opcode&gt; "["&lt;opcode number&gt;"]"  "("&lt;length of instruction&gt;")" "&lt;"&lt;target instruction&gt;"&gt;" "@"&lt;branch target offset&gt;</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>protected &nbsp;int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#updatePosition(int, int)">updatePosition</A></B>(int&nbsp;offset,               int&nbsp;max_offset)</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Since this is a variable length instruction, it may shift the following instructions which then need to update their position.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE>&nbsp;void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../org/apache/bcel/generic/Select.html#updateTarget(org.apache.bcel.generic.InstructionHandle, org.apache.bcel.generic.InstructionHandle)">updateTarget</A></B>(<A HREF="../../../../org/apache/bcel/generic/InstructionHandle.html">InstructionHandle</A>&nbsp;old_ih,             <A HREF="../../../../org/apache/bcel/generic/InstructionHandle.html">InstructionHandle</A>&nbsp;new_ih)</CODE><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD></TR></TABLE>&nbsp;<A NAME="methods_inherited_from_class_org.apache.bcel.generic.BranchInstruction"><!-- --></A><TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"><TD><B>Methods inherited from class org.apache.bcel.generic.<A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html">BranchInstruction</A></B></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE><A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html#getIndex()">getIndex</A>, <A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html#getTarget()">getTarget</A>, <A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html#getTargetOffset()">getTargetOffset</A>, <A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html#getTargetOffset(org.apache.bcel.generic.InstructionHandle)">getTargetOffset</A>, <A HREF="../../../../org/apache/bcel/generic/BranchInstruction.html#setTarget(org.apache.bcel.generic.InstructionHandle)">setTarget</A></CODE></TD></TR></TABLE>&nbsp;<A NAME="methods_inherited_from_class_org.apache.bcel.generic.Instruction"><!-- --></A><TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"><TD><B>Methods inherited from class org.apache.bcel.generic.<A HREF="../../../../org/apache/bcel/generic/Instruction.html">Instruction</A></B></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE><A HREF="../../../../org/apache/bcel/generic/Instruction.html#accept(org.apache.bcel.generic.Visitor)">accept</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#consumeStack(org.apache.bcel.generic.ConstantPoolGen)">consumeStack</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#copy()">copy</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#getLength()">getLength</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#getOpcode()">getOpcode</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#produceStack(org.apache.bcel.generic.ConstantPoolGen)">produceStack</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#readInstruction(org.apache.bcel.util.ByteSequence)">readInstruction</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#toString()">toString</A>, <A HREF="../../../../org/apache/bcel/generic/Instruction.html#toString(org.apache.bcel.classfile.ConstantPool)">toString</A></CODE></TD></TR></TABLE>&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A><TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -