Java Programming Fundamentals

Test your knowledge of Java programming concepts including constructors, inheritance, polymorphism, exceptions, I/O, and language features.

20 Questions Published

Questions

Question 1 Multiple Choice (Multiple Answers)

Which are valid declarations? (Choose all that apply.)

  1. int $x;
  2. int 123;
  3. int _123;
  4. int #dim;
  5. int %percent;
  6. int central_sales_region_Summer_2005_gross_sales;
Question 2 Multiple Choice (Multiple Answers)

Given:

1. enum A { A } 
2. class E2 { 
3.   enum B { B } 
4.   void C() { 
5.     enum D { D } 
6.   } 
7. } 

Which statements are true? (Choose all that apply.)

  1. If only line 1 is removed the code compiles.
  2. If only line 3 is removed the code compiles.
  3. If only line 5 is removed the code compiles.
  4. If lines 1 and 3 are removed the code compiles
  5. If lines 1, 3 and 5 are removed the code compiles.
Question 3 Multiple Choice (Single Answer)

package testing; public class SimpleClone implements Cloneable { int number = 100; int[] intArray = new int[10]; public SimpleClone() { int number = 100; for (int i = 0; i < intArray.length; i++) { intArray[i] = number; number++; } } public static void main(String[] args) { SimpleClone testclone1 = new SimpleClone(); SimpleClone testclone2; try { testclone2 = (SimpleClone) testclone1.clone(); testclone1.intArray[0] = 1200; testclone2.intArray[0] = 1400; testclone1.number = 1200; System.out.print(" testclone1 intArray[0] = " + testclone1.intArray[0]); System.out.print(" testclone1one2 intArray[0] = " + testclone2.intArray[0]); System.out.print(" testclone1 value of number = " + testclone1.number); System.out.print(" testclone2 value of number = " + testclone2.number); } catch (CloneNotSupportedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }

  1. testclone1 intArray[0] = 1400 testclone1one2 intArray[0] = 1400 testclone1 value of number = 1200 testclone2 value of number = 100
  2. testclone1 intArray[0] = 1200 testclone1one2 intArray[0] = 1400 testclone1 value of number = 1200 testclone2 value of number = 100
  3. testclone1 intArray[0] = 1400 testclone1one2 intArray[0] = 1400 testclone1 value of number = 1200 testclone2 value of number = 1200
  4. Compiler Error
Question 4 Multiple Choice (Single Answer)

package io; import java.io.*; public class TestFile { public static void main(String[] args) { File file = new File("test_file.txt"); System.out.print(" Fle Name = " + file.getName()); file.delete(); file.renameTo(new File("test_file2.txt")); System.out.print(" Fle Name = " + file.getName()); } }

  1. Null pointer Exception
  2. Fle Name = test_file.txt Fle Name = test_file.txt
  3. Compiler Error
  4. Fle Name = test_file.txt Fle Name = test_file2.txt
Question 5 Multiple Choice (Single Answer)

package io; import java.io.*; public class TestFile1 { public static void main(String[] args) { //No file exists by the name test_file.txt File file = new File("test_file.txt"); System.out.print(" Fle Name = "+file.getName()); System.out.print(" File Status = "+file.exists()); } }

  1. Fle Name = test_file.txt File Status = false
  2. Compiler Error
  3. Null Pointer Exception
  4. Fle Name = test_file.txt File Status = true
Question 6 Multiple Choice (Single Answer)

package inheritance; interface test_Int { void test(); } abstract class IntImplementer implements test_Int { public static void main(String[] args) { System.out.println("Hello World!"); } }

  1. No output
  2. Hello World!
  3. Compiler Error
  4. Exception
Question 7 Multiple Choice (Single Answer)

package inheritance; class X { Y b = new Y(); X() { System.out.print("X"); } } class Y { Y() { System.out.print("Y"); } } public class Z extends X { Y y = new Y(); Z() { System.out.print("Z"); } public static void main(String[] args) { new Z(); } }

  1. YXYZ
  2. Z
  3. ZX
  4. ZXYY
Question 8 True/False

Signature has to be the same for overloading.

  1. True
  2. False
Question 9 True/False

Overriding is an example of runtime polymorphism.

  1. True
  2. False
Question 10 True/False

Unreachable statements produce a compile-time error.

  1. True
  2. False
Question 11 True/False

byte, short can be converted to char and vice versa.

  1. True
  2. False
Question 12 True/False

Integer division by zero throws an exception.

  1. True
  2. False
Question 13 Multiple Choice (Single Answer)

package simplejava;public class TestConstructor{ int p ; public void TestConstructor(int p) { this.p=p; } public static void main(String[] args) { TestConstructor tp = new TestConstructor(10); TestConstructor tp = new TestConstructor(); System.out.println("p = "+tp.p); }}

  1. Compiler Error
  2. Exception
  3. p = 0
  4. p = 10
Question 14 Multiple Choice (Single Answer)

package simplejava; public class TestConstructor2 { int p; TestConstructor2() { System.out.print(" I am in Constructor"); } TestConstructor2(int p) { this(); this.p = p; System.out.print(" p = " + p); } public static void main(String[] args) { TestConstructor2 tp1 = new TestConstructor2(10); } }

  1. I am in Constructor p = 10
  2. I am in Constructor p = 0
  3. Compiler Error
  4. Exception
Question 15 Multiple Choice (Single Answer)

package simplejava;public class TestMain { TestMain() { System.out.println("I am in Constructor"); } TestMain(String message) { System.out.println("Message " + message); } public static void main(String[] args) { TestMain tm = new TestMain(); } public static void main(String args) { TestMain tm = new TestMain("Hello"); }}

  1. Message Hello
  2. I am in Constructor
  3. Compiler Error
  4. Exception
Question 16 Multiple Choice (Single Answer)

package simplejava;public class TestMain1 { TestMain1() { System.out.println("I am in Constructor"); } TestMain1(String message) { System.out.println("Message " + message); } public void main(String[] args) { TestMain1 nm = new TestMain1(); TestMain1 nm1 = new TestMain1("Hello"); }}

  1. Compiler Error
  2. Exception
  3. I am in Constructor
  4. Message Hello
Question 17 True/False

Are you allowed to have more than one top-level(non-inner) class definition per source file?

  1. True
  2. False
Question 18 Multiple Choice (Single Answer)

Assume the bit pattern of byte x is: 10110001. What will the sign of x be after x>>2?

  1. postive
  2. negative
  3. can't be find
  4. none of the above
Question 19 True/False

A class can define two methods with the same name as long as the return types are different

  1. True
  2. False
Question 20 Multiple Choice (Single Answer)

All exceptions inherit from

  1. java.lang.Exception
  2. java.lang.Error
  3. java.lang.Throwable
  4. none of the above