Package javassist.expr

# Class NewExpr

java.lang.Object
javassist.expr.Expr
javassist.expr.NewExpr

All Implemented Interfaces:
  `Opcode`

public class NewExpr extends Expr
Object creation (`new` expression).

## Field Summary

### Fields inherited from interface javassist.bytecode.Opcode

`AALOAD, AASTORE, ACONST_NULL, ALOAD, ALOAD_0, ALOAD_1, ALOAD_2, ALOAD_3, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ASTORE_0, ASTORE_1, ASTORE_2, ASTORE_3, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DLOAD_0, DLOAD_1, DLOAD_2, DLOAD_3, DMUL, DNEG, DREM, DRETURN, DSTORE, DSTORE_0, DSTORE_1, DSTORE_2, DSTORE_3, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAD_0, FLOAD_1, FLOAD_2, FLOAD_3, FMUL, FNEG, FREM, FRETURN, FSTORE, FSTORE_0, FSTORE_1, FSTORE_2, FSTORE_3, FSUB, GETFIELD, GETSTATIC, GOTO, GOTO_W, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, ILOAD_0, ILOAD_1, ILOAD_2, ILOAD_3, IMUL, INEG, INSTANCEOF, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISTORE_0, ISTORE_1, ISTORE_2, ISTORE_3, ISUB, IUSHR, IXOR, JSR, JSR_W, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDC_W, LDC2_W, LDIV, LLOAD, LLOAD_0, LLOAD_1, LLOAD_2, LLOAD_3, LMUL, LNEG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSTORE_0, LSTORE_1, LSTORE_2, LSTORE_3, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, STACK_GROW, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, WIDE`

## Method Summary

Modifier and Type
Method
Description
`String`
`getClassName()`
Returns the class name of the created object.
`CtConstructor`
`getConstructor()`
Returns the constructor called for creating the object.
`String`
`getFileName()`
Returns the source file containing the `new` expression.
`int`
`getLineNumber()`
Returns the line number of the source line containing the `new` expression.
`String`
`getSignature()`
Get the signature of the constructor The signature is represented by a character string called method descriptor, which is defined in the JVM specification.
`CtClass[]`
`mayThrow()`
Returns the list of exceptions that the expression may throw.
`void`
`replace(String statement)`
Replaces the `new` expression with the bytecode derived from the given source text.
`CtBehavior`
`where()`
Returns the method or constructor containing the `new` expression represented by this object.

### Methods inherited from class javassist.expr.Expr

`getEnclosingClass, indexOfBytecode, replace`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### where

public CtBehavior where()
Returns the method or constructor containing the `new` expression represented by this object.

Overrides:
  `where` in class `Expr`

### getLineNumber

public int getLineNumber()
Returns the line number of the source line containing the `new` expression.

Overrides:
  `getLineNumber` in class `Expr`
Returns:
  -1 if this information is not available.

### getFileName

public String getFileName()
Returns the source file containing the `new` expression.

Overrides:
  `getFileName` in class `Expr`
Returns:
  null if this information is not available.

### getClassName

public String getClassName()
Returns the class name of the created object.

### getSignature

public String getSignature()
Get the signature of the constructor The signature is represented by a character string called method descriptor, which is defined in the JVM specification.

Returns:
  the signature
See Also:
  - `CtBehavior.getSignature()`
  - `Descriptor`

### getConstructor

public CtConstructor getConstructor() throws NotFoundException
Returns the constructor called for creating the object.

Throws:
  `NotFoundException`

### mayThrow

public CtClass[] mayThrow()
Returns the list of exceptions that the expression may throw. This list includes both the exceptions that the try-catch statements including the expression can catch and the exceptions that the throws declaration allows the method to throw.

Overrides:
  `mayThrow` in class `Expr`

### replace

public void replace(String statement) throws CannotCompileException
Replaces the `new` expression with the bytecode derived from the given source text.

$0 is available but the value is null.

Specified by:
  `replace` in class `Expr`
Parameters:
  `statement` - a Java statement except try-catch.
Throws:
  `CannotCompileException`