com.sun.jdi

## Interface InterfaceType

All Superinterfaces:
  Accessible, Comparable<ReferenceType>, Mirror, ReferenceType, Type

    public interface InterfaceType
    extends ReferenceType

A mirror of an interface in the target VM. An InterfaceType is a refinement of `ReferenceType` that applies to true interfaces in the JLS sense of the definition (not a class, not an array type). An interface type will never be returned by `ObjectReference.referenceType()`, but it may be in the list of implemented interfaces for a `ClassType` that is returned by that method.

Since:
  1.3
See Also:
  `ObjectReference`

### Method Summary

Methods
`List<ClassType>` `implementors()` Gets the currently prepared classes which directly implement this interface.
`List<InterfaceType>` `subinterfaces()` Gets the currently prepared interfaces which directly extend this interface.
`List<InterfaceType>` `superinterfaces()` Gets the interfaces directly extended by this interface.

### Methods inherited from interface com.sun.jdi.ReferenceType

`allFields, allLineLocations, allLineLocations, allMethods, availableStrata, classLoader, classObject, constantPool, constantPoolCount, defaultStratum, equals, failedToInitialize, fieldByName, fields, genericSignature, getValue, getValues, hashCode, instances, isAbstract, isFinal, isInitialized, isPrepared, isStatic, isVerified, locationsOfLine, locationsOfLine, majorVersion, methods, methodsByName, methodsByName, minorVersion, name, nestedTypes, sourceDebugExtension, sourceName, sourceNames, sourcePaths, visibleFields, visibleMethods`

### Methods inherited from interface com.sun.jdi.Type

`signature`

### Methods inherited from interface com.sun.jdi.Mirror

`toString, virtualMachine`

### Methods inherited from interface java.lang.Comparable

`compareTo`

### Methods inherited from interface com.sun.jdi.Accessible

`isPackagePrivate, isPrivate, isProtected, isPublic, modifiers`

### Method Detail

#### superinterfaces

    List<InterfaceType> superinterfaces()

Gets the interfaces directly extended by this interface. The returned list contains only those interfaces this interface has declared to be extended.

Returns:
  a List of `InterfaceType` objects each mirroring an interface extended by this interface. If none exist, returns a zero length List.
Throws:
  `ClassNotPreparedException` - if this class not yet been prepared.

#### subinterfaces

    List<InterfaceType> subinterfaces()

Gets the currently prepared interfaces which directly extend this interface. The returned list contains only those interfaces that declared this interface in their "extends" clause.

Returns:
  a List of `InterfaceType` objects each mirroring an interface extending this interface. If none exist, returns a zero length List.

#### implementors

    List<ClassType> implementors()

Gets the currently prepared classes which directly implement this interface. The returned list contains only those classes that declared this interface in their "implements" clause.

Returns:
  a List of `ClassType` objects each mirroring a class implementing this interface. If none exist, returns a zero length List.

Copyright © 1999, 2014, Oracle and/or its affiliates. All rights reserved.