Java Programming - Operators and Assignments - Discussion

Discussion :: Operators and Assignments - Pointing out the correct statements (Q.No.1)

1. 

    
import java.awt.*;
class Ticker extends Component 
{
    public static void main (String [] args) 
    {
        Ticker t = new Ticker();
        /* Missing Statements ? */
    }
}
which two of the following statements, inserted independently, could legally be inserted into missing section of this code?
  1. boolean test = (Component instanceof t);
  2. boolean test = (t instanceof Ticker);
  3. boolean test = t.instanceof(Ticker);
  4. boolean test = (t instanceof Component);

[A]. 1 and 4
[B]. 2 and 3
[C]. 1 and 3
[D]. 2 and 4

Answer: Option D

Explanation:

(2) is correct because class type Ticker is part of the class hierarchy of t; therefore it is a legal use of the instanceof operator. (4) is also correct because Component is part of the hierarchy of t, because Ticker extends Component.

(1) is incorrect because the syntax is wrong. A variable (or null) always appears before the instanceof operator, and a type appears after it. (3) is incorrect because the statement is used as a method (t.instanceof(Ticker);), which is illegal.


Anand said: (Jan 5, 2017)  
What is the use of instanceof operator?

Harshad said: (Mar 30, 2017)  
@Anand.

To check whether the specified object is an instance of the class.

Post your comments here:

Name *:

Email   : (optional)

» Your comments will be displayed only after manual approval.