☕ Java MCQ Questions – Page 176
Questions 3501–3520 of 3994 total — Java interview practice
▶ Practice All Java QuestionsWhich exception is thrown when the `main` method of this Java code is executed?
java
import java.util.Arrays;
import java.util.List;
public class StringJoinNullElements {
public static void main(String[] args) {
List<String> elements = Arrays.asList("a", null, "b");
try {
String result = String.join("-", elements);
System.out.println(result);
} catch (Exception e) {
System.out.println(e.getClass().getSimpleName());
}
}
}
What will this Java code print to the console?
java
import java.util.function.Function;
public class StaticMethodReference {
public static String toUpperCase(String input) {
return input.toUpperCase();
}
public static void main(String[] args) {
Function<String, String> transformer = StaticMethodReference::toUpperCase;
System.out.println(transformer.apply("hello"));
}
}
What exception is thrown when the `oos.writeObject(inner)` line is executed in the `main` method?
java
import java.io.*;
class OuterClass {
private String name;
public OuterClass(String name) { this.name = name; }
class InnerClass implements Serializable { // Non-static inner class
private static final long serialVersionUID = 1L;
private int innerId;
public InnerClass(int innerId) { this.innerId = innerId; }
public int getInnerId() { return innerId; }
}
public InnerClass createInner(int id) {
return new InnerClass(id);
}
}
public class SerializationError4 {
public static void main(String[] args) throws IOException {
OuterClass outer = new OuterClass("My Outer");
OuterClass.InnerClass inner = outer.createInner(100);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(inner); // Error occurs here
oos.close();
}
}
Which exception will be thrown when executing this Java code?
java
public class StringError1 {
public static void main(String[] args) {
String s = null;
int len = s.length();
System.out.println(len);
}
}
What is the output of this Java program?
java
import java.util.TreeMap;
import java.util.Map;
public class TreeMapIteration {
public static void main(String[] args) {
TreeMap<String, Integer> map = new TreeMap<>();
map.put("banana", 2);
map.put("apple", 1);
map.put("cherry", 3);
StringBuilder sb = new StringBuilder();
for (Map.Entry<String, Integer> entry : map.entrySet()) {
sb.append(entry.getKey().charAt(0));
}
System.out.println(sb.toString());
}
}
What is the main conceptual difference between `throw` and `throws` in Java?
What is the output of this code?
java
class ImmutableClass {
final int x;
final String s;
{ x = 5; s = "block"; } // Instance initializer block
ImmutableClass() {}
ImmutableClass(int val) {
this.x = val; // Re-initializes x after instance block
this.s = "ctor";
}
public String toString() { return x + " " + s; }
}
public class Main {
public static void main(String[] args) {
ImmutableClass obj1 = new ImmutableClass();
ImmutableClass obj2 = new ImmutableClass(100);
System.out.println(obj1 + " " + obj2);
}
}
What does this code print?
java
import jakarta.validation.*;
import jakarta.validation.constraints.Size;
import java.util.Set;
public class Test {
static class Sub { @Size(min=3) public String id; public Sub(String id) { this.id = id; } }
static class Comp { @Valid public Sub sub; public Comp(Sub s) { this.sub = s; } }
static class Config {
@Valid public Comp main;
public Config(Comp c) { this.main = c; }
}
public static void main(String[] args) {
Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
Config cfg = new Config(new Comp(new Sub("a")));
Set<ConstraintViolation<Config>> violations = validator.validate(cfg);
System.out.println("Violations: " + violations.size());
}
}
What will happen when you try to compile this Java code?
java
public class Main {
public static void main(String[] args) {
myBlock: { // A labeled block, not a loop or switch
for (int i = 0; i < 3; i++) {
if (i == 1) continue myBlock;
}
System.out.println("Block finished");
}
System.out.println("Main finished");
}
}
What is the output of this code?
java
import java.util.TreeSet;
public class Main {
public static void main(String[] args) {
TreeSet<Integer> ts = new TreeSet<>();
ts.add(30);
ts.add(10);
ts.add(20);
System.out.println(ts);
}
}
What is the compile-time error in the `Sub` class?
java
class Super {
public static void display() {
System.out.println("Super static");
}
}
class Sub extends Super {
@Override
public void display() {
System.out.println("Sub instance");
}
}
public class Main {
public static void main(String[] args) {
Sub.display();
}
}
Considering memory footprint on a 64-bit JVM with compressed ordinary object pointers (OOPs), how does an `long[]` array compare to an `Object[]` array of the same length, holding `Long` objects, assuming both arrays store equivalent numerical data?
What is the output of this Java code?
java
class NameThread extends Thread {
public void run() {
System.out.println("Child: " + Thread.currentThread().getName());
}
}
public class Main {
public static void main(String[] args) throws InterruptedException {
NameThread t = new NameThread();
t.start();
t.join();
System.out.println("Main: " + Thread.currentThread().getName());
}
}
What does this code print?
java
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
public class DirectoryListing {
public static void main(String[] args) throws IOException {
File dir = new File("my_test_dir");
dir.mkdir();
new File(dir, "file_b.txt").createNewFile();
new File(dir, "subdir_a").mkdir();
new File(dir, "file_c.txt").createNewFile();
String[] list = dir.list();
Arrays.sort(list); // Ensures consistent order
String output = String.join(" ", list);
// Cleanup
new File(dir, "file_b.txt").delete();
new File(dir, "file_c.txt").delete();
new File(dir, "subdir_a").delete();
dir.delete();
System.out.println(output);
}
}
What is the output of this code?
java
import java.io.BufferedWriter;
import java.io.StringWriter;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
StringWriter stringWriter = new StringWriter();
try (BufferedWriter writer = new BufferedWriter(stringWriter)) {
writer.write("Line1");
writer.newLine();
writer.write("Line2");
writer.flush();
System.out.print(stringWriter.toString().replace("\n", "\\n"));
} catch (IOException e) {
System.out.print("Error");
}
}
}
What kind of error will this Java code snippet produce when executed?
java
import java.util.Arrays;
import java.util.List;
public class FixedSizeListModification {
public static void main(String[] args) {
String[] namesArray = {"Alice", "Bob"};
List<String> fixedSizeList = Arrays.asList(namesArray);
fixedSizeList.add("Charlie"); // Attempt to add to a fixed-size list
}
}
What exception is thrown when the `ois.readObject()` line is executed during deserialization?
java
import java.io.*;
import java.io.ObjectInputFilter.Config;
import java.io.ObjectInputFilter.FilterInfo;
import java.io.ObjectInputFilter.Status;
class FilteredClass implements Serializable {
private static final long serialVersionUID = 1L;
String data;
public FilteredClass(String data) { this.data = data; }
public String toString() { return data; }
}
public class SerializationError9 {
public static void main(String[] args) throws Exception {
// Serialize an object
FilteredClass obj = new FilteredClass("Sensitive Data");
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(obj);
byte[] serializedData = bos.toByteArray();
oos.close();
// Deserialization with a filter that rejects FilteredClass
ByteArrayInputStream bis = new ByteArrayInputStream(serializedData);
ObjectInputStream ois = new ObjectInputStream(bis);
// Set a filter that rejects FilteredClass
ois.setObjectInputFilter(info -> {
if (info.serialClass() != null && info.serialClass().getName().equals("FilteredClass")) {
return Status.REJECTED; // Explicitly reject objects of type FilteredClass
}
return Status.UNDECIDED;
});
// Error occurs here due to the filter
FilteredClass deserialized = (FilteredClass) ois.readObject();
ois.close();
System.out.println(deserialized);
}
}
What is the outcome when this Java code is executed?
java
import java.util.LinkedList;
import java.util.List;
public class Test {
public static void main(String[] args) {
LinkedList<Double> values = new LinkedList<>();
values.add(1.1);
List<Double> myList = values;
myList.addFirst(0.0);
System.out.println(myList);
}
}
What error will this Java code produce when executed?
java
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> data = new ArrayList<>();
data.add(1);
data.add(2);
Iterator<Integer> it1 = data.iterator();
Iterator<Integer> it2 = data.iterator();
it1.next(); // Retrieves 1 for it1
it2.remove(); // Calling remove() for it2 without its own next() call
}
}
What is the output of this code?
java
import java.io.BufferedWriter;
import java.io.StringWriter;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
StringWriter stringWriter = new StringWriter();
try (BufferedWriter writer = new BufferedWriter(stringWriter)) {
char[] chars = {'J', 'A', 'V', 'A'};;
writer.write(chars, 1, 2);
writer.flush();
System.out.print(stringWriter.toString());
} catch (IOException e) {
System.out.print("Error");
}
}
}