please send code example of inner classes?

Answer Posted / shaik baji

In Java we have 4 types of inner classes

1)Regular Inner Classes
2)Method local Inner Classes
3)Static Inner Classes
4)Anonymous Inner Classes

Regular Inner Class:
---------------------

public class RegularInnerClassDemo
{
RegularInnerClassDemo()
{
System.out.println("RegularInnerClassDemo");
}
class InnerClass
{

InnerClass()
{
System.out.println("InnerClass");
}
public void go()
{
System.out.println("hi");
}
}
public static void main (String [] args)
{
RegularInnerClassDemo f = new
RegularInnerClassDemo();
f.makeBar();
}
void makeBar()
{
(new InnerClass() {}).go();
}
}

Method Local Inner Class:
--------------------------
public class MethodLocalInnerClassDemo
{
public static void main (String [] args)
{
class InnerClass
{
public String name;
public InnerClass(String s)
{
name = s;
}
}
Object obj = new InnerClass("Zippo");
InnerClass h = (InnerClass) obj;
System.out.println(h.name);
}
}

Anonymous Inner Class:
----------------------

Anonymous inner class comes in two forms

1)Normal Anonymous Inner Class
2)Parametrized Anonymous Inner Class

1) Normal Anonymous Inner Class:

Again the Normal Anonymous Inner class is two types

a)Extending the class by Anonymous Inner Class
b)Implementing the interface by Anonymous Inner
Class

a)Extending the class by Anonymous Inner Class

class One
{
void printOne()
{
System.out.println("One");
}
}
class AnonymousDemoByClass
{
public static void main(String Arg[])
{
One obj = new One(){
void printOne()
{
printTwo();
}
void printTwo()
{
System.out.println
("Two");
}
};
obj.printOne();
}
}



Output: Two







b) Implementing the interface by Anonymous Inner
Class

interface One
{
void printOne();
}
class AnonymousDemoByInterface
{
public static void main(String Arg[])
{
One obj = new One(){
public void printOne()
{
printTwo();
}
void printTwo()
{
System.out.println
("Two");
}
};
obj.printOne();
}
}

Output: Two

2)Parametrized Anonymous Inner Class:

Here we are implementing our Anonymous inner class as a
paramer to any method.

interface One
{
void printOne();
}

class ParameterizedAnonymousDemo
{
public static void main(String Arg[])
{
ParameterizedAnonymousDemo obj =
new ParameterizedAnonymousDemo();
obj.doSomething(new One(){
public void printOne
()
{

System.out.println("One");
}
});

}
public void doSomething(One objOne)
{
objOne.printOne();
}
}

Is This Answer Correct ?    1 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What happens when heap memory is full?

742


What is size of int in java?

801


What does this () mean in constructor chaining concept?

817


What is double data type?

734


Mention some features of java?

735


Explain which of the following methods releases the lock when yield(), join(),sleep(),wait(),notify(), notifyall() methods are executed?

846


Explain 5 features introduced in jdk 1.7?

806


What exactly is a .class file?

811


How do you add an element to a set in java?

763


Can classes declared using the abstract keyword cab be instantiated?

824


In Java list the methods that can be overridden?

780


Why lambda expression is used in java?

767


How can you avoid serialization in child class if the base class is implementing the serializable interface?

835


How do you avoid global variables?

775


How do you check if a number is a perfect square?

744