final keyword


1
Question 1
What is the use of final keyword in Java?
A
When a class is made final, a sublcass of it can not be created.
B
When a method is final, it can not be overridden.
C
When a variable is final, it can be assigned value only once.
D
All of the above
final keyword    
Discuss it


Question 1 Explanation: 
Question 2
Output of follwoing Java program
class Main {
 public static void main(String args[]){
   final int i;
   i = 20;
   System.out.println(i);
 }
}
A
20
B
Compiler Error
C
0
D
Garbage value
final keyword    
Discuss it


Question 2 Explanation: 
There is no error in the program. final variables can be assigned value only once. In the above program, i is assigned a value as 20, so 20 is printed.
Question 3
class Main {
 public static void main(String args[]){
    final int i;
    i = 20;
    i = 30;
    System.out.println(i);
 }
}
A
30
B
Compiler Error
C
Garbage value
D
0
final keyword    
Discuss it


Question 3 Explanation: 
i is assigned a value twice. Final variables can be assigned values only one. Following is the compiler error "Main.java:5: error: variable i might already have been assigned"
Question 4
class Base {
  public final void show() {
       System.out.println("Base::show() called");
    }
}
class Derived extends Base {
    public void show() {  
       System.out.println("Derived::show() called");
    }
}
public class Main {
    public static void main(String[] args) {
        Base b = new Derived();;
        b.show();
    }
}
A
Derived::show() called
B
Base::show() called
C
Compiler Error
D
Exception
final keyword    
Discuss it


Question 4 Explanation: 
compiler error: show() in Derived cannot override show() in Base
There are 4 questions to complete.
1

Company Wise Coding Practice    Topic Wise Coding Practice