In memory, the rows of a two-dimensional array in Java can be __________.

  • none of the above
  • stored as linked lists
  • stored in random order
  • stored sequentially
In Java, the rows of a two-dimensional array are stored sequentially in memory. This means that the elements of each row are stored one after the other in memory, making it more efficient for accessing elements in a row. This sequential storage pattern is different from languages like C, where a 2D array is essentially an array of pointers to individual rows.

Can a constructor return a value in Java?

  • Yes, a constructor can return a value, which is the default value of the class's primary data type.
  • No, constructors cannot return values in Java.
  • A constructor can return values, but only if it has the same name as the class.
  • A constructor can return values, but they must be of type 'void.'
b) is correct. Constructors in Java cannot return values, and their return type is always 'void.' a), c), and d) are incorrect statements.

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.

The ________ method of DatagramSocket class is used to send a packet to a server.

  • send()
  • sendPacket()
  • sendToServer()
  • transmitPacket()
In Java, the send() method of the DatagramSocket class is used to send a packet to a server. It is a crucial method for working with UDP (User Datagram Protocol) sockets.

What method is commonly used to execute SQL queries in Java?

  • execute()
  • executeQuery()
  • executeStatement()
  • executeUpdate()
In Java, the executeQuery() method is commonly used to execute SQL queries using JDBC. This method is specifically designed for executing SELECT queries and returns a ResultSet containing the query results. The other options (executeStatement(), executeUpdate(), and execute()) are not typically used for executing queries or have different purposes.

Imagine a situation where you are dealing with very large files that need to be read and processed, but you want to ensure that the system remains responsive and does not run out of memory. How would you implement file reading in this case?

  • Read the entire file into memory using FileInputStream.
  • Use a BufferedReader with a small buffer size.
  • Implement a memory-mapped file using FileChannel and MappedByteBuffer.
  • Use Scanner with a large buffer size.
To ensure responsiveness and prevent memory exhaustion when dealing with large files, it's best to use a BufferedReader with a reasonably small buffer size. This allows for efficient reading of the file without loading the entire content into memory. The other options are less efficient and may lead to memory issues.

The expression a != b returns true if a is ______ b.

  • equal to
  • greater than
  • less than
  • not equal to
The expression "a != b" returns true if "a" is not equal to "b." It checks if the values of "a" and "b" are different. The "!=" operator is used for inequality comparisons. The other options represent different comparison operations.

What will be the output of the following code snippet: public int add(int a, long b) { return a + b; } and public long add(int a, int b) { return a + b; }?

  • Compilation Error: Ambiguous method call.
  • Compilation Error: Duplicate method add with the same parameter types.
  • Compilation Error: Mismatched return types.
  • The code will run without errors, and the output will be the sum of a and b.
The code will result in a compilation error because both methods have the same name and the same parameter types (int and long). Java does not allow you to overload methods based solely on the return type. Overloaded methods must have different parameter lists. Overloading based on return types would lead to ambiguity.

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.

If we have a 2D array int[][] arr, the expression arr[i] refers to the __________.

  • an error
  • entire array
  • ith column of the array
  • ith row of the array
In a 2D array in Java, arr[i] refers to the ith row of the array. This is because a 2D array is essentially an array of arrays, where each element arr[i] is itself an array representing a row. Accessing arr[i] gives you the entire row at index i.