Uses of Class java.lang.invoke.MethodHandles.Lookup (Java Platform SE 8 )
Date: 2026-04-17

## Uses of Class
java.lang.invoke.MethodHandles.Lookup

- Packages that use MethodHandles.Lookup
  Package | Description
  --- | ---
  java.lang.invoke | The `java.lang.invoke` package contains dynamic language support provided directly by the Java core class libraries and virtual machine.

- - ### Uses of MethodHandles.Lookup in java.lang.invoke

    Methods in java.lang.invoke that return MethodHandles.Lookup
    Modifier and Type | Method and Description
    --- | ---
    `MethodHandles.Lookup` | MethodHandles.Lookup.`in(Class<?> requestedLookupClass)` Creates a lookup on the specified new lookup class.
    `static MethodHandles.Lookup` | MethodHandles.`lookup()` Returns a `lookup object` with full capabilities to emulate all supported bytecode behaviors of the caller.
    `static MethodHandles.Lookup` | MethodHandles.`publicLookup()` Returns a `lookup object` which is trusted minimally.

    Methods in java.lang.invoke with parameters of type MethodHandles.Lookup
    Modifier and Type | Method and Description
    --- | ---
    `static CallSite` | LambdaMetafactory.`altMetafactory(MethodHandles.Lookup caller, String invokedName, MethodType invokedType, Object... args)` Facilitates the creation of simple "function objects" that implement one or more interfaces by delegation to a provided `MethodHandle`, after appropriate type adaptation and partial evaluation of arguments.
    `static CallSite` | LambdaMetafactory.`metafactory(MethodHandles.Lookup caller, String invokedName, MethodType invokedType, MethodType samMethodType, MethodHandle implMethod, MethodType instantiatedMethodType)` Facilitates the creation of simple "function objects" that implement one or more interfaces by delegation to a provided `MethodHandle`, after appropriate type adaptation and partial evaluation of arguments.
    `<T extends Member> T` | MethodHandleInfo.`reflectAs(Class<T> expected, MethodHandles.Lookup lookup)` Reflects the underlying member as a method, constructor, or field object.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.