1z0-808 Exam - Java SE 8 Programmer I

certleader.com

Q1. What is the proper way to defined a method that take two int values and returns their sum as an int value? 

A. int sum(int first, int second) { first + second; } 

B. int sum(int first, second) { return first + second; } 

C. sum(int first, int second) { return first + second; } 

D. int sum(int first, int second) { return first + second; } 

E. void sum (int first, int second) { return first + second; } 

Answer:

Q2. Given the code fragment: 

for (int ii = 0; ii < 3;ii++) { 

int count = 0; 

for (int jj = 3; jj > 0; jj--) { 

if (ii == jj) { 

++count; 

break; 

System.out.print(count); continue; } 

What is the result? 

A. 011 

B. 012 

C. 123 

D. 000 

Answer:

Q3. Given the code fragment: 

// insert code here 

arr[0] = new int[3]; 

arr[0][0] = 1; 

arr[0][1] = 2; 

arr[0][2] = 3; 

arr[1] = new int[4]; 

arr[1][0] = 10; 

arr[1][1] = 20; 

arr[1][2] = 30; 

arr[1][3] = 40; 

Which two statements, when inserted independently at line // insert code here, enable the code to compile? 

A. int [] [] arr = null; 

B. int [] [] arr = new int [2]; 

C. int [] [] arr = new int [2] [ ]; 

D. int [] [] arr = new int [] [4]; 

E. int [] [] arr = new int [2] [0]; 

F. int [] [] arr = new int [0] [4]; 

Answer: C,E 

Q4. Given: 

public class ColorTest { 

public static void main(String[] args) { 

String[] colors = {"red", "blue","green","yellow","maroon","cyan"}; 

int count = 0; 

for (String c : colors) { 

if (count >= 4) { 

break; 

else { 

continue; 

if (c.length() >= 4) { 

colors[count] = c.substring(0,3); 

count++; 

System.out.println(colors[count]); 

What is the result? 

A. Yellow 

B. Maroon 

C. Compilation fails 

D. A StringIndexOutOfBoundsException is thrown at runtime. 

Answer:

Explanation: The line, if (c.length() >= 4) {, is never reached. This causes a compilation error. 

Note: The continue statement skips the current iteration of a for, while , or do-while loop. An unlabeled.break.statement terminates the innermost.switch,.for,.while, or.do-while.statement, but a labeled.break.terminates an outer statement. 

Q5. Given: 

public class MyClass { 

public static void main(String[] args) { 

String s = " Java Duke "; 

int len = s.trim().length(); 

System.out.print(len); 

What is the result? 

A. 8 

B. 9 

C. 11 

D. 10 

E. Compilation fails 

Answer:

Explanation: Java - String trim() Method 

This method returns a copy of the string, with leading and trailing whitespace omitted. 

Q6. Which statement is true about Java byte code? 

A. It can run on any platform. 

B. It can run on any platform only if it was compiled for that platform. 

C. It can run on any platform that has the Java Runtime Environment. 

D. It can run on any platform that has a Java compiler. 

E. It can run on any platform only if that platform has both the Java Runtime Environment and a Java compiler. 

Answer:

Q7. Given: 

package p1; 

public interface DoInterface { 

void method1(int n1); // line n1 

package p3; 

import p1.DoInterface; 

public class DoClass implements DoInterface { 

public DoClass(int p1) { } 

public void method1(int p1) { } // line n2 

private void method2(int p1) { } // line n3 

public class Test { 

public static void main(String[] args) { 

DoInterface doi= new DoClass(100); // line n4 

doi.method1(100); 

doi.method2(100); 

Which change will enable the code to compile? 

A. Adding the public modifier to the declaration of method1 at line n1 

B. Removing the public modifier from the definition of method1 at line n2 

C. Changing the private modifier on the declaration of method 2 public at line n3 

D. Changing the line n4 DoClass doi = new DoClass ( ); 

Answer:

Explanation: Private members (both fields and methods) are only accessible inside the class they are declared or inside inner classes. private keyword is one of four access modifier provided by Java and its a most restrictive among all four e.g. public, default(package), protected and private. 

Read more: http://javarevisited.blogspot.com/2012/03/private-in-java-why-should-you-always.html#ixzz3Sh3mOc4D 

Q8. Given: 

What is the result? 

A. 400 200 

B. 200 200 

C. 400 400 

D. Compilation fails. 

Answer:

Q9. Given the code fragment: 

What could expression1 and expression2 be, respectively, in order to produce output –8, 16? 

A. + +a, - -b 

B. + +a, b- -

C. A+ +, - - b 

D. A + +, b - -

Answer:

Q10. int i, j=0; 

i = (3* 2 +4 +5 ) ; 

j = (3 * ((2+4) + 5)); 

System.out.println("i:"+ i + "\nj":+j); 

What is the result? 

A. Option A 

B. Option B 

C. Option C 

D. Option D 

Answer: