1z0-808 Premium Bundle

1z0-808 Premium Bundle

Java SE 8 Programmer I Certification Exam

4.5 
(12825 ratings)
0 QuestionsPractice Tests
0 PDFPrint version
November 5, 2024Last update

Oracle 1z0-808 Free Practice Questions

Q1. 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:

Q2. Given the code fragment: 

What is the result? 

A. Element 0 Element 1 

B. Null element 0 Null element 1 

C. Null Null 

D. A NullPointerException is thrown at runtime. 

Answer:

Q3. Which statement is/are true? 

I. Default constructor only contains "super();" call. 

II. We can't use any access modifier with a constructor. 

III. A constructor should not have a return type. 

A. Only I. 

B. Only II. 

C. Only I and II. 

D. Only I and III. 

E. AIL 

Answer:

Explanation: 

Statement I is correct as the default constructor only contains super0 call 

Statement II is incorrect as we can use any access modifier with a constructor. 

Statement III is correct as constructor can't have return type, even void. 

So option D is correct. 

httpsy/docs.oracle.com/javase/tutorial/iava/javaOO/construaors.html 

Q4. Given the following class declarations: 

public abstract class Animal 

public interface Hunter 

public class Cat extends Animal implements Hunter 

public class Tiger extends Cat 

Which answer fails to compile? 

A. Option A 

B. Option B 

C. Option C 

D. Option D 

E. Option E 

Answer:

Explanation: Look at the right side of the declaration ArrayLIst() rather than ArrayList 

Q5. Given the code fragment: 

What is the result? 

A. A B C 

B. A B C D E 

C. A B D E 

D. Compilation fails. 

Answer:

Q6. Given the fragment: 

String[][] arra = new String[3][]; 

arra[0] = new String[]{"rose", "lily"}; 

arra[1] = new String[]{"apple", "berry","cherry","grapes"}; 

arra[0] = new String[]{"beans", "carrot","potato"}; 

// insert code fragment here 

Which code fragment when inserted at line '// insert code fragment here', enables the code to successfully change arra elements to uppercase? 

A. String[][] arra = new String[3][]; 

arra[0] = new String[]{"rose", "lily"}; 

arra[1] = new String[]{"apple", "berry","cherry","grapes"}; 

arra[0] = new String[]{"beans", "carrot","potato"}; 

for (int i = 0; i < arra.length; i++) { 

for (int j=0; j < arra[i].length; j++) { 

arra[i][j] = arra[i][j].toUpperCase(); 

B. for (int i = 0; i < 3; i++) { 

for (int j=0; j < 4; j++) { 

arra[i][j] = arra[i][j].toUpperCase(); 

C. for (String a[]:arra[][]) { 

for (String x:a[]) { 

D. toUpperCase(); 

E. for (int i:arra.length) { 

for (String x:arra) { 

arra[i].toUpperCase(); 

Answer:

Explanation: 

Incorrect: 

not A: arra.length is 3, but the subarrays have 2, 3 and 4 elements. Index will be out of 

bound. 

not B: The subarrys are of different lengths. Index will be out of bound. 

not D: Compile error. 

Q7. Which two statements are true for a two-dimensional array? 

A. It is implemented as an array of the specified element type. 

B. Using a row by column convention, each row of a two-dimensional array must be of the same size. 

C. At declaration time, the number of elements of the array in each dimension must be specified. 

D. All methods of the class Object may be invoked on the two-dimensional array. 

Answer: A,D 

Q8. Given the following code: 

What are the values of each element in intArr after this code has executed? 

A. 15, 60, 45, 90, 75 

B. 15, 90, 45, 90, 75 

C. 15, 30, 75, 60, 90 

D. 15, 30, 90, 60, 90 

E. 15, 4, 45, 60, 90 

Answer:

Q9. Given the code fragment: 

Which code fragment, when inserted at line 3, enables the code to print 10:20? 

A. int[] array n= new int[2]; 

B. int[] array; array = int[2]; 

C. int array = new int[2]; 

D. int array [2] ; 

Answer:

Q10. Given: 

Which two classes use the shape class correctly? 

A. Option A 

B. Option B 

C. Option C 

D. Option D 

E. Option E 

F. Option F 

Answer: B,E 

Explanation: When an abstract class is subclassed, the subclass usually provides implementations for all of the abstract methods in its parent class (E). However, if it does not, then the subclass must also be declared abstract (B). Note: An abstract class is a class that is declared abstract—it may or may not include abstract methods. Abstract classes cannot be instantiated, but they can be subclassed. 

Q11. Given: 

class Mid { 

public int findMid(int n1, int n2) { 

return (n1 + n2) / 2; 

public class Calc extends Mid { 

public static void main(String[] args) { 

int n1 = 22, n2 = 2; 

// insert code here 

System.out.print(n3); 

Which two code fragments, when inserted at // insert code here, enable the code to compile and print 12? 

A. Calc c = new Calc(); int n3 = c.findMid(n1,n2); 

B. int n3 = super.findMid(n1,n3); 

C. Calc c = new Mid(); int n3 = c.findMid(n1, n2); 

D. Mid m1 = new Calc(); int n3 = m1.findMid(n1, n2); 

E. int n3 = Calc.findMid(n1, n2); 

Answer: A,D 

Explanation: 

Incorrect: 

Not B: circular definition of n3. 

Not C: Compilation error. line Calc c = new Mid(); 

required: Calc 

found: Mid 

Not E: Compilation error. line int n3 = Calc.findMid(n1, n2); 

non-static method findMid(int,int) cannot be referenced from a static context 

Q12. Given: 

public class Equal { 

public static void main(String[] args) { 

String str1 = "Java"; 

String[] str2 = {"J","a","v","a"}; 

String str3 = ""; 

for (String str : str2) { 

str3 = str3+str; 

boolean b1 = (str1 == str3); 

boolean b2 = (str1.equals(str3)); 

System.out.print(b1+", "+b2); 

What is the result? 

A. true, false 

B. false, true 

C. true, true 

D. false, false 

Answer:

Explanation: == strict equality. equals compare state, not identity. 

Q13. Which of the following data types will allow the following code snippet to compile? 

A. long 

B. double 

C. int 

D. float 

E. byte 

Answer: B,D 

Explanation: 

Option B and D are the correct answer. 

Since the variables I and j are floats, resultant will be float type too. So we have to use float 

or primitive type which can hold float, such a primitive type is double, it has wider range 

and also can hold floating point numbers, hence we can use double or float for the blank. 

As explained above options B and D are correct. 

long and int can't be used with floating point numbers so option A is incorrect. 

Option E is incorrect as it have smaller range and also can't be used with floating point 

numbers. 

hnpsy/docs.oracle.com/javase/tutorial/java/javaOO/variables.html 

Q14. Given: 

Class A { } 

Class B { } 

Interface X { } 

Interface Y { } 

Which two definitions of class C are valid? 

A. Class C extends A implements X { } 

B. Class C implements Y extends B { } 

C. Class C extends A, B { } 

D. Class C implements X, Y extends B { } 

E. Class C extends B implements X, Y { } 

Answer: A,E 

Explanation: extends is for extending a class. 

implements is for implementing an interface. Java allows for a class to implement many interfaces. 

Q15. Given the code fragment: 

public class Test { 

static String[][] arr =new String[3][]; 

private static void doPrint() { 

//insert code here 

public static void main(String[] args) { 

String[] class1 = {"A","B","C"}; 

String[] class2 = {"L","M","N","O"}; 

String[] class3 = {"I","J"}; 

arr[0] = class1; 

arr[1] = class2; 

arr[2] = class3; 

Test.doPrint(); 

Which code fragment, when inserted at line //insert code here, enables the code to print 

COJ? 

A. int i = 0; 

for (String[] sub: arr) { 

int j = sub.length -1; 

for (String str: sub) { 

System.out.println(str[j]); 

i++; 

B. private static void doPrint() { 

for (int i = 0;i < arr.length;i++) { 

int j = arr[i].length-1; 

System.out.print(arr[i][j]); 

C. int i = 0; 

for (String[] sub: arr[][]) { 

int j = sub.length; 

System.out.print(arr[i][j]); 

i++; 

D. for (int i = 0;i < arr.length-1;i++) { 

int j = arr[i].length-1; 

System.out.print(arr[i][j]); 

i++; 

Answer:

Explanation: 

Incorrect: 

not A: The following line causes a compile error: 

System.out.println(str[j]); 

Not C: Compile erro line: 

for (String[] sub: arr[][]) 

not D: Output: C 

START 1z0-808 EXAM