import java.lang.invoke.*;
class Example {
public static void main
(String[] args
) { // class Example
System.
out.
println(MethodHandles.
lookup().
lookupClass()); // null
System.
out.
println(MethodHandles.
lookup().
lookupClass().
getEnclosingMethod());
class Local {
void method() {
// class Example$1Local
System.
out.
println(MethodHandles.
lookup().
lookupClass()); // public static void Example.main(java.lang.String[])
System.
out.
println(MethodHandles.
lookup().
lookupClass().
getEnclosingMethod()); }
}
new Local().method();
}
}
aW1wb3J0IGphdmEubGFuZy5pbnZva2UuKjsKCmNsYXNzIEV4YW1wbGUgewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIC8vIGNsYXNzIEV4YW1wbGUKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oTWV0aG9kSGFuZGxlcy5sb29rdXAoKS5sb29rdXBDbGFzcygpKTsKICAgICAgICAvLyBudWxsCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKE1ldGhvZEhhbmRsZXMubG9va3VwKCkubG9va3VwQ2xhc3MoKS5nZXRFbmNsb3NpbmdNZXRob2QoKSk7CiAgICAgICAgCiAgICAgICAgY2xhc3MgTG9jYWwgewogICAgICAgICAgICB2b2lkIG1ldGhvZCgpIHsKICAgICAgICAgICAgICAgIC8vIGNsYXNzIEV4YW1wbGUkMUxvY2FsCiAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oTWV0aG9kSGFuZGxlcy5sb29rdXAoKS5sb29rdXBDbGFzcygpKTsKICAgICAgICAgICAgICAgIC8vIHB1YmxpYyBzdGF0aWMgdm9pZCBFeGFtcGxlLm1haW4oamF2YS5sYW5nLlN0cmluZ1tdKQogICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKE1ldGhvZEhhbmRsZXMubG9va3VwKCkubG9va3VwQ2xhc3MoKS5nZXRFbmNsb3NpbmdNZXRob2QoKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgbmV3IExvY2FsKCkubWV0aG9kKCk7CiAgICB9Cn0=