Tagged articles
3 articles
Page 1 of 1
DeWu Technology
DeWu Technology
Aug 26, 2024 · Fundamentals

Understanding Java's invokedynamic and Lambda Implementation

The article explains how Java’s invokedynamic instruction and LambdaMetafactory create synthetic classes and MethodHandles to implement Lambda expressions, detailing compilation steps, stateless versus stateful handling, performance implications, and the requirement for captured variables to be effectively final.

JVMLambdaMethodHandle
0 likes · 16 min read
Understanding Java's invokedynamic and Lambda Implementation
21CTO
21CTO
Oct 23, 2019 · Mobile Development

How Android Supports Java 8 Lambda: From invokedynamic to RetroLambda & D8

This article explains the principles behind Java 8 lambda expressions and the invokedynamic bytecode instruction, then examines how Android indirectly supports these features through tools like RetroLambda, Jack & Jill, and the D8 dex compiler, detailing their desugaring processes and limitations.

AndroidD8Desugar
0 likes · 16 min read
How Android Supports Java 8 Lambda: From invokedynamic to RetroLambda & D8
Meituan Technology Team
Meituan Technology Team
Oct 17, 2019 · Mobile Development

Understanding Java 8 Lambda Support on Android: invokedynamic, RetroLambda, Jack & Jill, and D8

The article explains how Java 8 lambda expressions rely on the invokedynamic bytecode instruction, and how Android compensates for its absence by desugaring lambdas through RetroLambda, the now‑deprecated Jack & Jill toolchain, and the modern D8 compiler, each generating synthetic classes for runtime execution.

AndroidD8Desugar
0 likes · 14 min read
Understanding Java 8 Lambda Support on Android: invokedynamic, RetroLambda, Jack & Jill, and D8