## Uses of Class
java.lang.FunctionalInterface

Packages that use FunctionalInterface
java.awt: Contains all of the classes for creating user interfaces and for painting graphics and images.
java.io: Provides for system input and output through data streams, serialization and the file system.
java.lang: Provides classes that are fundamental to the design of the Java programming language.
java.nio.file: Defines interfaces and classes for the Java virtual machine to access files, file attributes, and file systems.
java.time.temporal: Access to date and time using fields and units, and date time adjusters.
java.util: Contains the collections framework, legacy collection classes, event model, date and time facilities, internationalization, and miscellaneous utility classes (a string tokenizer, a random-number generator, and a bit array).
java.util.concurrent: Utility classes commonly useful in concurrent programming.
java.util.function: Functional interfaces provide target types for lambda expressions and method references.
java.util.logging: Provides the classes and interfaces of the Java™ 2 platform's core logging facilities.
java.util.prefs: This package allows applications to store and retrieve user and system preference and configuration data.

### Uses of FunctionalInterface in java.awt

Classes in java.awt with annotations of type FunctionalInterface
`interface` `KeyEventDispatcher` A KeyEventDispatcher cooperates with the current KeyboardFocusManager in the targeting and dispatching of all KeyEvents.
`interface` `KeyEventPostProcessor` A KeyEventPostProcessor cooperates with the current KeyboardFocusManager in the final resolution of all unconsumed KeyEvents.

### Uses of FunctionalInterface in java.io

Classes in java.io with annotations of type FunctionalInterface
`interface` `FileFilter` A filter for abstract pathnames.
`interface` `FilenameFilter` Instances of classes that implement this interface are used to filter filenames.

### Uses of FunctionalInterface in java.lang

Classes in java.lang with annotations of type FunctionalInterface
`interface` `Runnable` The `Runnable` interface should be implemented by any class whose instances are intended to be executed by a thread.
`static interface` `Thread.UncaughtExceptionHandler` Interface for handlers invoked when a `Thread` abruptly terminates due to an uncaught exception.

### Uses of FunctionalInterface in java.nio.file

Classes in java.nio.file with annotations of type FunctionalInterface
`static interface` `DirectoryStream.Filter<T>` An interface that is implemented by objects that decide if a directory entry should be accepted or filtered.
`interface` `PathMatcher` An interface that is implemented by objects that perform match operations on paths.

### Uses of FunctionalInterface in java.time.temporal

Classes in java.time.temporal with annotations of type FunctionalInterface
`interface` `TemporalAdjuster` Strategy for adjusting a temporal object.
`interface` `TemporalQuery<R>` Strategy for querying a temporal object.

### Uses of FunctionalInterface in java.util

Classes in java.util with annotations of type FunctionalInterface
`interface` `Comparator<T>` A comparison function, which imposes a total ordering on some collection of objects.

### Uses of FunctionalInterface in java.util.concurrent

Classes in java.util.concurrent with annotations of type FunctionalInterface
`interface` `Callable<V>` A task that returns a result and may throw an exception.
`static interface` `Flow.Publisher<T>` A producer of items (and related control messages) received by Subscribers.

### Uses of FunctionalInterface in java.util.function

Classes in java.util.function with annotations of type FunctionalInterface
`interface` `BiConsumer<T,U>` Represents an operation that accepts two input arguments and returns no result.
`interface` `BiFunction<T,U,R>` Represents a function that accepts two arguments and produces a result.
`interface` `BinaryOperator<T>` Represents an operation upon two operands of the same type, producing a result of the same type as the operands.
`interface` `BiPredicate<T,U>` Represents a predicate (boolean-valued function) of two arguments.
`interface` `BooleanSupplier` Represents a supplier of `boolean`-valued results.
`interface` `Consumer<T>` Represents an operation that accepts a single input argument and returns no result.
`interface` `DoubleBinaryOperator` Represents an operation upon two `double`-valued operands and producing a `double`-valued result.
`interface` `DoubleConsumer` Represents an operation that accepts a single `double`-valued argument and returns no result.
`interface` `DoubleFunction<R>` Represents a function that accepts a double-valued argument and produces a result.
`interface` `DoublePredicate` Represents a predicate (boolean-valued function) of one `double`-valued argument.
`interface` `DoubleSupplier` Represents a supplier of `double`-valued results.
`interface` `DoubleToIntFunction` Represents a function that accepts a double-valued argument and produces an int-valued result.
`interface` `DoubleToLongFunction` Represents a function that accepts a double-valued argument and produces a long-valued result.
`interface` `DoubleUnaryOperator` Represents an operation on a single `double`-valued operand that produces a `double`-valued result.
`interface` `Function<T,R>` Represents a function that accepts one argument and produces a result.
`interface` `IntBinaryOperator` Represents an operation upon two `int`-valued operands and producing an `int`-valued result.
`interface` `IntConsumer` Represents an operation that accepts a single `int`-valued argument and returns no result.
`interface` `IntFunction<R>` Represents a function that accepts an int-valued argument and produces a result.
`interface` `IntPredicate` Represents a predicate (boolean-valued function) of one `int`-valued argument.
`interface` `IntSupplier` Represents a supplier of `int`-valued results.
`interface` `IntToDoubleFunction` Represents a function that accepts an int-valued argument and produces a double-valued result.
`interface` `IntToLongFunction` Represents a function that accepts an int-valued argument and produces a long-valued result.
`interface` `IntUnaryOperator` Represents an operation on a single `int`-valued operand that produces an `int`-valued result.
`interface` `LongBinaryOperator` Represents an operation upon two `long`-valued operands and producing a `long`-valued result.
`interface` `LongConsumer` Represents an operation that accepts a single `long`-valued argument and returns no result.
`interface` `LongFunction<R>` Represents a function that accepts a long-valued argument and produces a result.
`interface` `LongPredicate` Represents a predicate (boolean-valued function) of one `long`-valued argument.
`interface` `LongSupplier` Represents a supplier of `long`-valued results.
`interface` `LongToDoubleFunction` Represents a function that accepts a long-valued argument and produces a double-valued result.
`interface` `LongToIntFunction` Represents a function that accepts a long-valued argument and produces an int-valued result.
`interface` `LongUnaryOperator` Represents an operation on a single `long`-valued operand that produces a `long`-valued result.
`interface` `ObjDoubleConsumer<T>` Represents an operation that accepts an object-valued and a `double`-valued argument, and returns no result.
`interface` `ObjIntConsumer<T>` Represents an operation that accepts an object-valued and a `int`-valued argument, and returns no result.
`interface` `ObjLongConsumer<T>` Represents an operation that accepts an object-valued and a `long`-valued argument, and returns no result.
`interface` `Predicate<T>` Represents a predicate (boolean-valued function) of one argument.
`interface` `Supplier<T>` Represents a supplier of results.
`interface` `ToDoubleBiFunction<T,U>` Represents a function that accepts two arguments and produces a double-valued result.
`interface` `ToDoubleFunction<T>` Represents a function that produces a double-valued result.
`interface` `ToIntBiFunction<T,U>` Represents a function that accepts two arguments and produces an int-valued result.
`interface` `ToIntFunction<T>` Represents a function that produces an int-valued result.
`interface` `ToLongBiFunction<T,U>` Represents a function that accepts two arguments and produces a long-valued result.
`interface` `ToLongFunction<T>` Represents a function that produces a long-valued result.
`interface` `UnaryOperator<T>` Represents an operation on a single operand that produces a result of the same type as its operand.

### Uses of FunctionalInterface in java.util.logging

Classes in java.util.logging with annotations of type FunctionalInterface
`interface` `Filter` A Filter can be used to provide fine grain control over what is logged, beyond the control provided by log levels.

### Uses of FunctionalInterface in java.util.prefs

Classes in java.util.prefs with annotations of type FunctionalInterface
`interface` `PreferenceChangeListener` A listener for receiving preference change events.