________ is an interface in JDBC, which can be used to move a cursor in the result set in both directions.
- PreparedStatement
- ResultSet
- ResultSetMetaData
- Statement
The ResultSet interface in JDBC is used to retrieve data from a database query result. It allows you to move a cursor in the result set in both directions, forward and backward, and retrieve data from the current row. This is especially useful when you need to navigate and process the result set efficiently.
Which index of a multi-dimensional array represents the row index in Java?
- First index
- It depends on the array's dimensions.
- Second index
- Third index
In Java, for a multi-dimensional array, the first index represents the row index. For a 2D array, it represents the row number, and for a 3D array, it represents the depth along the first dimension. The other indices represent the columns (2nd index), and if applicable, additional dimensions.
Which class allows you to read lines of text from a file?
- BufferedReader
- FileReader
- InputStreamReader
- Scanner
The BufferedReader class is commonly used for reading lines of text from a file in Java. It provides methods like readLine() that allow you to read a complete line of text at a time. While other classes like FileReader and Scanner can also be used for reading files, BufferedReader is preferred for its efficiency and ease of use when reading lines of text.
When would you prefer byte streams over character streams while performing I/O operations in Java?
- When dealing with binary data and non-text files, such as images or audio.
- When working with XML or HTML files that contain text and tags.
- When you need to perform text-based operations, like reading and writing characters.
- When you want to handle file I/O in a platform-independent manner.
Byte streams are suitable for reading and writing binary data, while character streams are used for handling text data. Byte streams are ideal for handling non-text files, like images or audio, where individual bytes matter. Character streams are used for text files and automatically handle character encoding.
A ______ block can be used to define customized serialization logic.
- finalization
- synchronized
- try-catch
- writeObject
In Java, the writeObject block is used to define customized serialization logic for an object. It allows you to control how an object is serialized when it's written to an output stream. The other options are not used for custom serialization logic.
The method ________ is used to remove all the mappings from a Map.
- clear()
- eraseAll()
- removeAll()
- removeMappings()
In Java, the clear() method is used to remove all the mappings from a Map. It does not remove the map itself but makes it empty, removing all key-value pairs. The other options do not perform this specific function.
Deadlock occurs when two or more threads are blocked forever, each waiting for the other to ________.
- acquire
- complete
- join
- release
Deadlock in multithreading occurs when two or more threads are waiting for resources acquired by each other. They cannot proceed as they are both holding resources the other needs, resulting in a deadlock situation.
How does the FileWriter class handle character encoding?
- It always uses the system's default character encoding.
- It automatically detects and sets the appropriate character encoding.
- It doesn't support character encoding; it writes bytes as is.
- It prompts the user to choose the encoding when creating an instance.
The FileWriter class in Java uses the system's default character encoding for writing text to a file. It doesn't automatically detect or set character encoding. To specify a different encoding, you should use constructors like FileWriter(String fileName, Charset charset) to explicitly set the encoding.
What will be the initial capacity of a HashSet when no size is defined during its creation?
- 0
- 10
- 16
- It will result in an error
When you create a HashSet in Java without specifying its initial capacity, it defaults to an initial capacity of 16. The capacity dynamically increases as needed when elements are added to the HashSet.
You are developing a real-time gaming application where certain operations need to be repeated at regular time intervals. Which looping mechanism and timing control statements would you use to achieve this without blocking the user interface?
- do-while loop and Thread.yield()
- for loop and System.nanoTime()
- forEach loop and System.currentTimeMillis()
- while loop and Thread.sleep()
In a real-time gaming application, you would typically use a while loop in combination with the Thread.sleep() method to introduce a delay between iterations without blocking the UI. The other options may not be suitable for achieving this specific timing control.