import java.io.*;
import java.net.*;
public class Test {
public static void main(String[] arguments) throws Exception {
Runnable runnable =() -> {
try {
throwException();
}
catch (SocketException|EOFException exception) {
System.err.println("wrong");
}
catch (IOException exception) {
System.err.println("right");
}
};
runnable.run();
}
private static void throwException() throws IOException {
throw new NotSerializableException();
}
}
यह प्रोग्राम "गलत" क्यों प्रिंट करता है? अगर मैं लैम्ब्डा को हटा देता हूं, या यदि मैं मल्टी-कैच क्लॉज को अलग करता हूं, तो यह "दाएं" प्रिंट करता है।लैम्बडा और बहु-पकड़ खंडों को संयोजित करते समय जावा बग?
$ javac -version
javac 1.8.0_11
$ java -version
java version "1.8.0_11"
Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)