"We cannot create an object of interface but we can create a
variable of it". Discuss the statement with the help of an
example.

(Plz help us to provide immediately.)

Answer Posted / nick

In layman terms it can be said that a interface basicaly
provides a template. Since it does not have any concreet
functions we cannot create its object, as during
implemetation(runtime) there would be no definition found
for the particular function that would have been hardcoded
into the program. Where as using it as a refernce variable
is possible because of the technique provided by java
i.e. 'Virtual Method Invocation'. This enables us to create
a variable of a interface, but at runtime the function
defenition that would be called would be the one of the
object of the class actually being referred. It would get
clear from the following example:

interface Color
{
void green();
void red();
void blue();
}

here if we create a object of interface Color like

Color clr= new Color();
clr.green();

then it would give an error as there is no implementation
available for the function green();

whereas this senario is valid where we have another class

class Implemeter
{
public void green()
{
System.out.println("You selected green color");
}
public void red()
{
System.out.println("You selected red color");
}
}

and now we use like this

Color clr = new Implementer();
clr.green();

then this is absolutely valid as on runtime the function
definition of green() from class Implementer would be
called and not of interface Color. This technique is called
virtual method invocation.

Just let me know if this information was helpful, or if you
have any other doubts.

Is This Answer Correct ?    29 Yes 4 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is integers and example?

484


What is the importance of static variable?

580


What do you mean by local class?

509


What is meant by flickering?

648


What is meant by local variable and instance variable?

592






Explain constructors and types of constructors in java.

637


How does hashset work in java?

557


Explain reverse a linked list iterative solution in java?

492


Where will it be used?

1501


What is the meaning of nullable?

569


How can you share data between two thread in Java?

516


Which types of exceptions are caught at compile time?

560


what is thread? What are the high-level thread states? Or what are the states associated in the thread? : Java thread

488


What is methodological theory?

520


Are primitives objects?

556