How do you specify a timeout while trying to connect to a remote socket?
- setConnectionTimeout()
- setSoTimeout()
- setSocketTimeout()
- setTimeout()
To specify a timeout while trying to connect to a remote socket in Java, you can use the setSoTimeout() method on the Socket object. This method sets a maximum time for blocking operations, such as connecting or reading, to complete.
How can you prevent the fall-through behavior in a switch case?
- Fall-through behavior cannot be prevented in a switch case.
- Use the break statement after each case block.
- Use the continue statement after each case block.
- Use the stop statement after each case block.
In Java, you can prevent fall-through behavior in a switch case by using the break statement at the end of each case block. When a break is encountered, the control flow exits the switch statement, preventing the execution of subsequent cases. Without break, fall-through behavior will occur, and all cases after the matched one will be executed.
What will happen if the DriverManager is unable to connect to the database using the provided URL?
- A compilation error will occur
- A runtime exception will be thrown
- An SQLException will be thrown
- It will silently retry to connect in the background
When the DriverManager in JDBC fails to connect to the database using the provided URL, it throws an SQLException. This exception should be handled in your code to gracefully manage the failure and take appropriate actions, such as logging the error or providing a user-friendly message.
Which of the following character stream classes should be used to read characters, arrays, and lines efficiently?
- BufferedReader
- CharArrayReader
- FileReader
- InputStreamReader
The BufferedReader class is used to read characters, arrays, and lines efficiently from a character input stream. It provides buffering, which makes reading more efficient. FileReader is used to read characters from files, and InputStreamReader is used for byte-to-character conversion. CharArrayReader is used to read from character arrays.
When using a single-thread executor, what happens if a submitted task throws an exception?
- The exception is caught, logged, and the executor continues to execute other tasks.
- The exception is ignored, and the executor continues to execute other tasks.
- The exception is propagated up the call stack to the caller of the submit() method.
- The thread running the task is terminated, and the executor replaces it with a new thread.
In a single-thread executor, when a submitted task throws an exception, it is caught and logged, but the executor continues to execute other tasks. The executor does not terminate due to an exception in a single task; it maintains the single thread for execution.
In Java, if a class implements an interface and does not provide implementations for all its methods, it must be declared as ________.
- Abstract Class
- Concrete Class
- Final Class
- Static Class
When a class in Java implements an interface but doesn't provide implementations for all the interface methods, it must be declared as an abstract class. This is because an abstract class can have unimplemented methods, while concrete classes need to provide implementations for all interface methods they inherit.
The keyword ________ is used to skip the rest of the current loop iteration.
- break
- continue
- exit
- return
In Java, the continue keyword is used to skip the rest of the current loop iteration and move to the next iteration. It is often used in loops like for and while when certain conditions are met, and you want to skip the current iteration and continue with the next one. The other options do not serve this purpose.
The relational operators are often used inside the ______ statement to produce boolean value.
- for
- if
- switch
- while
Relational operators (e.g., <, >, ==) are commonly used inside the "if" statement to create conditions that produce boolean (true/false) values based on comparisons.
Which class is primarily used for implementing UDP sockets?
- DatagramPacket
- DatagramSocket
- ServerSocket
- Socket
In Java, the DatagramSocket class is primarily used for implementing UDP (User Datagram Protocol) sockets. It provides methods to send and receive UDP packets. The other options are not specific to UDP sockets.
What is the result of Double.POSITIVE_INFINITY == Double.POSITIVE_INFINITY in Java?
- It depends on the context of the comparison.
- It returns false.
- It returns true.
- It throws an ArithmeticException.
In Java, comparing Double.POSITIVE_INFINITY to itself using the == operator returns true. This behavior is consistent with the IEEE 754 standard, which defines the behavior of floating-point numbers. Double.POSITIVE_INFINITY is considered equal to itself. Options 2 and 3 are incorrect because they don't accurately represent the result of this comparison. Option 4 is incorrect because the comparison of infinity values is well-defined in Java.