## org.apache.bcel.generic
Class INVOKEINTERFACE

    java.lang.Object
      org.apache.bcel.generic.Instruction
          org.apache.bcel.generic.CPInstruction
              org.apache.bcel.generic.FieldOrMethod
                  org.apache.bcel.generic.InvokeInstruction
                      org.apache.bcel.generic.INVOKEINTERFACE

All Implemented Interfaces:
  Serializable, Cloneable, ExceptionThrower, IndexedInstruction, LoadClass, StackConsumer, StackProducer, TypedInstruction

    public final class INVOKEINTERFACE

extends InvokeInstruction

INVOKEINTERFACE - Invoke interface method

    Stack: ..., objectref, [arg1, [arg2 ...]] -> ...

Version:
  $Id: INVOKEINTERFACE.java 386056 2006-03-15 11:31:56Z tcurdt $
See Also:
  Serialized Form

Field Summary

Fields inherited from class org.apache.bcel.generic.CPInstruction
`index`

Fields inherited from class org.apache.bcel.generic.Instruction
`length, opcode`

Constructor Summary
`INVOKEINTERFACE(int index, int nargs)`

Method Summary
`void` `accept(Visitor v)` Call corresponding visitor method(s).
`int` `consumeStack(ConstantPoolGen cpg)` Also works for instructions whose stack effect depends on the constant pool entry they reference.
`void` `dump(DataOutputStream out)` Dump instruction as byte code to stream out.
`int` `getCount()` The count argument according to the Java Language Specification, Second Edition.
`Class[]` `getExceptions()`
`protected void` `initFromFile(ByteSequence bytes, boolean wide)` Read needed data (i.e., index) from file.
`String` `toString(ConstantPool cp)`

Methods inherited from class org.apache.bcel.generic.InvokeInstruction
`getArgumentTypes, getMethodName, getReturnType, getType, produceStack`

Methods inherited from class org.apache.bcel.generic.FieldOrMethod
`getClassName, getClassType, getLoadClassType, getName, getReferenceType, getSignature`

Methods inherited from class org.apache.bcel.generic.CPInstruction
`getIndex, setIndex, toString`

Methods inherited from class org.apache.bcel.generic.Instruction
`copy, equals, getComparator, getLength, getName, getOpcode, readInstruction, setComparator, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### INVOKEINTERFACE

    public INVOKEINTERFACE(int index,
                           int nargs)

Method Detail

### dump

    public void dump(DataOutputStream out)
              throws IOException

  Dump instruction as byte code to stream out.

  Overrides:
    `dump` in class `CPInstruction`
  Parameters:
    `out` - Output stream
  Throws:
    `IOException`

### getCount

    public int getCount()

  The count argument according to the Java Language Specification, Second Edition.

### initFromFile

    protected void initFromFile(ByteSequence bytes,
                                boolean wide)
                         throws IOException

  Read needed data (i.e., index) from file.

  Overrides:
    `initFromFile` in class `CPInstruction`
  Parameters:
    `bytes` - input stream
    `wide` - wide prefix?
  Throws:
    `IOException`

### toString

    public String toString(ConstantPool cp)

  Overrides:
    `toString` in class `InvokeInstruction`
  Returns:
    mnemonic for instruction with symbolic references resolved

### consumeStack

    public int consumeStack(ConstantPoolGen cpg)

  Description copied from class: `InvokeInstruction`
  Also works for instructions whose stack effect depends on the constant pool entry they reference.

  Specified by:
    `consumeStack` in interface `StackConsumer`
  Overrides:
    `consumeStack` in class `InvokeInstruction`
  Returns:
    Number of words consumed from stack by this instruction

### getExceptions

    public Class[] getExceptions()

### accept

    public void accept(Visitor v)

  Call corresponding visitor method(s). The order is: Call visitor methods of implemented interfaces first, then call methods according to the class hierarchy in descending order, i.e., the most specific visitXXX() call comes last.

  Specified by:
    `accept` in class `Instruction`
  Parameters:
    `v` - Visitor object

Copyright © 2002-2006 Apache Software Foundation. All Rights Reserved.