SlideShare a Scribd company logo
2
Most read
6
Most read
7
Most read
Java Inner Classes
-Arulkumar V
Assistant Professor, SECE
Interface in Java
 Java inner class or nested class is a class
which is declared inside the class or
interface.
 We use inner classes to logically group
classes and interfaces in one place so that
it can be more readable and maintainable.
 Additionally, it can access all the members
of outer class including private data
members and methods.
Syntax of Inner class
class Java_Outer_class{
//code
class Java_Inner_class{
//code
}
}
Advantage of java inner classes
There are basically three advantages of inner classes in java. They
are as follows:
1) Nested classes represent a special type of relationship that is it
can access all the members (data members and methods) of
outer class including private.
2) Nested classes are used to develop more readable and
maintainable code because it logically group classes and
interfaces in one place only.
3) Code Optimization: It requires less code to write.
Types of Nested classes
There are two types of nested classes
non-static and static nested classes.
The non-static nested classes are also known as
inner classes.
>Non-static nested class (inner class)
Member inner class
Anonymous inner class
Local inner class
>Static nested class
Cont.,
Java Member inner class In this example, we are creating msg()
method in member inner class that is accessing the private data
member of outer class.
class TestMemberOuter1{
private int data=30;
class Inner{
void msg(){System.out.println("data is "+data);}
}
public static void main(String args[]){
TestMemberOuter1 obj=new TestMemberOuter1();
TestMemberOuter1.Inner in=obj.new Inner();
in.msg();
}
}
Java anonymous inner class example using class
abstract class Person{
abstract void eat();
}
class TestAnonymousInner{
public static void main(String args[]){
Person p=new Person(){
void eat(){System.out.println("nice fruits");}
};
p.eat();
}
}
Java local inner class example
public class localInner1{
private int data=30;//instance variable
void display(){
class Local{
void msg(){System.out.println(data);}
}
Local l=new Local();
l.msg();
}
public static void main(String args[]){
localInner1 obj=new localInner1();
obj.display();
}
}
Java static nested class
 A static class i.e. created inside a class is called static
nested class in java. It cannot access non-static data
members and methods. It can be accessed by outer
class name.
◦ It can access static data members of outer class including
private.
◦ Static nested class cannot access non-static (instance) data
member or method.
Java static nested class example with
instance method
class TestOuter1{
static int data=30;
static class Inner{
void msg(){System.out.println("data is "+data);}
}
public static void main(String args[]){
TestOuter1.Inner obj=new TestOuter1.Inner();
obj.msg();
}
}
Thank You
19-12-2017 Sampath Kumar.S, AP/IT 12

More Related Content

PPTX
1s and 2s complement
PDF
IGCSE ICT - Types and Components of Computer Systems - Hardware and Software ...
PPT
Binary to Decimal Conversion
PPTX
Motivation
PPTX
Number System
PPTX
Event handling
PPTX
Polymorphism presentation in java
PDF
Classification of Mental Disorders (DSM-5 & ICD 10.pptx-drjma
1s and 2s complement
IGCSE ICT - Types and Components of Computer Systems - Hardware and Software ...
Binary to Decimal Conversion
Motivation
Number System
Event handling
Polymorphism presentation in java
Classification of Mental Disorders (DSM-5 & ICD 10.pptx-drjma

What's hot (20)

PPTX
Static Members-Java.pptx
PPTX
java interface and packages
PDF
Class and Objects in Java
PPTX
I/O Streams
PPT
PPT
Java-java virtual machine
PPTX
This keyword in java
PDF
Java IO
PPTX
Basic Concepts of OOPs (Object Oriented Programming in Java)
PPTX
Methods in java
PPTX
Inheritance in java
PPT
Java And Multithreading
PPTX
Applets in java
PPTX
Understanding java streams
PPTX
OOPS In JAVA.pptx
PPTX
Classes objects in java
PPT
Java multi threading
PDF
PPTX
Packages in java
Static Members-Java.pptx
java interface and packages
Class and Objects in Java
I/O Streams
Java-java virtual machine
This keyword in java
Java IO
Basic Concepts of OOPs (Object Oriented Programming in Java)
Methods in java
Inheritance in java
Java And Multithreading
Applets in java
Understanding java streams
OOPS In JAVA.pptx
Classes objects in java
Java multi threading
Packages in java
Ad

Similar to Inner classes in java (20)

PPT
A1771937735_21789_14_2018__16_ Nested Classes.ppt
PPTX
Java Programming inner and Nested classes.pptx
PDF
ch4 foohggggvvbbhhhhhhhhhbbbbbbbbbbbbp.pdf
PPTX
Inner Classes & Multi Threading in JAVA
PDF
Inner Classes in Java
PPTX
object oriented programming using java, second sem BCA,UoM
DOCX
Nested class in java
PPTX
Unit3 packages & interfaces
PPTX
Java Nested classes, static class and methods, nested blocks_Inner_Classes.pptx
PPTX
Inner class
PPTX
Object oriented programming CLASSES-AND-OBJECTS.pptx
PPTX
Unit3 part3-packages and interfaces
DOCX
Nested classes in java
PPTX
this keyword in Java.pptx
PPTX
Inner class
PPTX
WINSEMFRE2024-25_CSE2005_ETH_AP2024255000715_2025-03-18_Reference-Material-I....
PPT
Class and object in C++
PPT
classandobjectunit2-150824133722-lva1-app6891.ppt
PPT
C++ classes
A1771937735_21789_14_2018__16_ Nested Classes.ppt
Java Programming inner and Nested classes.pptx
ch4 foohggggvvbbhhhhhhhhhbbbbbbbbbbbbp.pdf
Inner Classes & Multi Threading in JAVA
Inner Classes in Java
object oriented programming using java, second sem BCA,UoM
Nested class in java
Unit3 packages & interfaces
Java Nested classes, static class and methods, nested blocks_Inner_Classes.pptx
Inner class
Object oriented programming CLASSES-AND-OBJECTS.pptx
Unit3 part3-packages and interfaces
Nested classes in java
this keyword in Java.pptx
Inner class
WINSEMFRE2024-25_CSE2005_ETH_AP2024255000715_2025-03-18_Reference-Material-I....
Class and object in C++
classandobjectunit2-150824133722-lva1-app6891.ppt
C++ classes
Ad

More from PhD Research Scholar (20)

PPTX
Quiz servlet
PPTX
servlet db connectivity
PPTX
2.java script dom
PPTX
1.java script
PPTX
Quiz javascript
PPTX
Thread&multithread
PPTX
Streams&io
PPTX
PPTX
Interface in java
PPTX
PPTX
Exception handling
PPTX
Abstract class
PPTX
7. tuples, set & dictionary
PPTX
PPTX
4. functions
Quiz servlet
servlet db connectivity
2.java script dom
1.java script
Quiz javascript
Thread&multithread
Streams&io
Interface in java
Exception handling
Abstract class
7. tuples, set & dictionary
4. functions

Recently uploaded (20)

PPTX
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
PDF
Piense y hagase Rico - Napoleon Hill Ccesa007.pdf
PPTX
UNDER FIVE CLINICS OR WELL BABY CLINICS.pptx
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PDF
Business Ethics Teaching Materials for college
DOCX
UPPER GASTRO INTESTINAL DISORDER.docx
PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
English Language Teaching from Post-.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
Module 3: Health Systems Tutorial Slides S2 2025
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Pre independence Education in Inndia.pdf
PPTX
Open Quiz Monsoon Mind Game Prelims.pptx
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PPTX
Introduction and Scope of Bichemistry.pptx
Introduction to Child Health Nursing – Unit I | Child Health Nursing I | B.Sc...
Piense y hagase Rico - Napoleon Hill Ccesa007.pdf
UNDER FIVE CLINICS OR WELL BABY CLINICS.pptx
Abdominal Access Techniques with Prof. Dr. R K Mishra
human mycosis Human fungal infections are called human mycosis..pptx
Business Ethics Teaching Materials for college
UPPER GASTRO INTESTINAL DISORDER.docx
Week 4 Term 3 Study Techniques revisited.pptx
Anesthesia in Laparoscopic Surgery in India
English Language Teaching from Post-.pdf
O7-L3 Supply Chain Operations - ICLT Program
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
O5-L3 Freight Transport Ops (International) V1.pdf
Module 3: Health Systems Tutorial Slides S2 2025
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Pre independence Education in Inndia.pdf
Open Quiz Monsoon Mind Game Prelims.pptx
Pharmacology of Heart Failure /Pharmacotherapy of CHF
Introduction and Scope of Bichemistry.pptx

Inner classes in java

  • 1. Java Inner Classes -Arulkumar V Assistant Professor, SECE
  • 2. Interface in Java  Java inner class or nested class is a class which is declared inside the class or interface.  We use inner classes to logically group classes and interfaces in one place so that it can be more readable and maintainable.  Additionally, it can access all the members of outer class including private data members and methods.
  • 3. Syntax of Inner class class Java_Outer_class{ //code class Java_Inner_class{ //code } }
  • 4. Advantage of java inner classes There are basically three advantages of inner classes in java. They are as follows: 1) Nested classes represent a special type of relationship that is it can access all the members (data members and methods) of outer class including private. 2) Nested classes are used to develop more readable and maintainable code because it logically group classes and interfaces in one place only. 3) Code Optimization: It requires less code to write.
  • 5. Types of Nested classes There are two types of nested classes non-static and static nested classes. The non-static nested classes are also known as inner classes. >Non-static nested class (inner class) Member inner class Anonymous inner class Local inner class >Static nested class
  • 7. Java Member inner class In this example, we are creating msg() method in member inner class that is accessing the private data member of outer class. class TestMemberOuter1{ private int data=30; class Inner{ void msg(){System.out.println("data is "+data);} } public static void main(String args[]){ TestMemberOuter1 obj=new TestMemberOuter1(); TestMemberOuter1.Inner in=obj.new Inner(); in.msg(); } }
  • 8. Java anonymous inner class example using class abstract class Person{ abstract void eat(); } class TestAnonymousInner{ public static void main(String args[]){ Person p=new Person(){ void eat(){System.out.println("nice fruits");} }; p.eat(); } }
  • 9. Java local inner class example public class localInner1{ private int data=30;//instance variable void display(){ class Local{ void msg(){System.out.println(data);} } Local l=new Local(); l.msg(); } public static void main(String args[]){ localInner1 obj=new localInner1(); obj.display(); } }
  • 10. Java static nested class  A static class i.e. created inside a class is called static nested class in java. It cannot access non-static data members and methods. It can be accessed by outer class name. ◦ It can access static data members of outer class including private. ◦ Static nested class cannot access non-static (instance) data member or method.
  • 11. Java static nested class example with instance method class TestOuter1{ static int data=30; static class Inner{ void msg(){System.out.println("data is "+data);} } public static void main(String args[]){ TestOuter1.Inner obj=new TestOuter1.Inner(); obj.msg(); } }
  • 12. Thank You 19-12-2017 Sampath Kumar.S, AP/IT 12