# Interface: com.pnfsoftware.jeb.core.units.code.asm.type.IClassType

Interface to represent native class types.

## Method: collectVirtualMethodOverrides
- parameter: `tableIndex`, type: `int`
- parameter: `methodIndex`, type: `int`
- parameter: `overUp`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.type.VirtualMethodCoordinates>`
- parameter: `overDown`, type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.type.VirtualMethodCoordinates>`
- return type: `boolean`

Description: Gather the overrides and reverse\-overrides of a virtual method.
parameter: tableIndex: virtual table index
parameter: methodIndex: method index within the virtual table
parameter: overUp: optional output sink; if non\-null, will contain all ascending reverse\-overrides            \(the current method is included, and will be the first element in the collection\)
parameter: overDown: optional output sink; if non\-null, will contain all descending overrides \(the            current method is not included\)
return: success indicator \(false means the provided method was not a virtual method of this         class\)

## Method: getClassItem
- return type: `com.pnfsoftware.jeb.core.units.code.asm.items.INativeClassItem`

Description: Get the associated class item.
return: class item, or null

## Method: getInstanceFields
- return type: `java.util.List<? extends com.pnfsoftware.jeb.core.units.code.asm.type.IStructureTypeField>`

Description: Get instance fields.
return: instance fields

## Method: getSubtypes
- return type: `java.util.Collection<? extends com.pnfsoftware.jeb.core.units.code.asm.type.IClassType>`

Description: Get direct subtypes.
return: subtypes

## Method: getSupertypes
- return type: `java.util.Collection<? extends com.pnfsoftware.jeb.core.units.code.asm.type.IClassType>`

Description: Get direct supertypes.
return: supertypes

## Method: getVirtualTables
- return type: `java.util.List<? extends com.pnfsoftware.jeb.core.units.code.asm.type.IVirtualTableDefinition>`

Description: Get virtual table definitions.
return: virtual table definitions

## Method: renameVirtualMethod
- parameter: `tableIndex`, type: `int`
- parameter: `methodIndex`, type: `int`
- parameter: `name`, type: `java.lang.String`
- return type: `boolean`

Description: Rename a virtual method consistently. Other relevant methods of the class hierarchy will be renamed as well.
parameter: tableIndex: virtual table index
parameter: methodIndex: method index within the virtual table
parameter: name: new name for the method
return: success indicator

