00001 package de.fub.bytecode.generic;
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 public class INVOKEVIRTUAL extends InvokeInstruction {
00012
00013
00014
00015
00016 INVOKEVIRTUAL() {}
00017 public INVOKEVIRTUAL(int index) {
00018 super(INVOKEVIRTUAL, index);
00019 }
00020 public Class[] getExceptions() {
00021 Class[] cs = new Class[4 + EXCS_FIELD_AND_METHOD_RESOLUTION.length];
00022
00023 System.arraycopy(EXCS_FIELD_AND_METHOD_RESOLUTION, 0,
00024 cs, 0, EXCS_FIELD_AND_METHOD_RESOLUTION.length);
00025 cs[EXCS_FIELD_AND_METHOD_RESOLUTION.length-3] = UNSATISFIED_LINK_ERROR;
00026 cs[EXCS_FIELD_AND_METHOD_RESOLUTION.length-2] = ABSTRACT_METHOD_ERROR;
00027 cs[EXCS_FIELD_AND_METHOD_RESOLUTION.length-1] = INCOMPATIBLE_CLASS_CHANGE_ERROR;
00028 cs[EXCS_FIELD_AND_METHOD_RESOLUTION.length] = NULL_POINTER_EXCEPTION;
00029 return cs;
00030 }
00031 }