Package org.eclipse.mat.snapshot.model

## Interface IInstance

All Superinterfaces:
  `IObject`, `java.io.Serializable`

All Known Subinterfaces:
  `IClassLoader`

All Known Implementing Classes:
  `ClassLoaderImpl`, `InstanceImpl`

    public interface IInstance
    extends IObject

Interface for a plain vanilla object instance in the heap dump.

No Implement:

### Nested Class Summary

### Nested classes/interfaces inherited from interface org.eclipse.mat.snapshot.model.IObject

`IObject.Type`

### Method Summary

All Methods Instance Methods Abstract Methods
`Field` `getField​(java.lang.String name)` Returns the field identified by the name.
`java.util.List<Field>` `getFields()` Returns all fields of the object.

### Methods inherited from interface org.eclipse.mat.snapshot.model.IObject

`getClassSpecificName, getClazz, getDisplayName, getGCRootInfo, getObjectAddress, getObjectId, getOutboundReferences, getRetainedHeapSize, getSnapshot, getTechnicalName, getUsedHeapSize, resolveValue`

### Method Detail

#### getFields

    java.util.List<Field> getFields()

Returns all fields of the object.

Fields are ordered in such a way, that first fields defined in the current class and then fields of the super class and its super classes are returned. This order is important to know, if a class declares a field by the same name as the class it inherits from.

Returns:
  a list of the fields

#### getField

    Field getField​(java.lang.String name)

Returns the field identified by the name.

If declares a member variable by the same name as the parent class does, then the result of this method is undefined.

Parameters:
  `name` - the name of the field
Returns:
  the field