4. Java OOP. 6. Inner Classes презентация

Nested Classes (1 of 2) A nested class is a class defined within another class: class OuterClass { ... class NestedClass {

Слайд 14. Java OOP
6. Inner Classes


Слайд 2Nested Classes (1 of 2)
A nested class is a class defined

within another class:
class OuterClass {
...
class NestedClass {
...
}
}

*

Infopulse Training Center


Слайд 3Nested Classes (2 of 2)
A nested class is a member of

its enclosing class
Non-static nested classes (inner classes) have access to other members of the enclosing class, even if they are declared private
Static nested classes do not have access to other instance members of the enclosing class

*

Infopulse Training Center


Слайд 4Why Use Nested Classes?
It is a way of logically grouping classes

that are only used in one place.
It increases encapsulation.
Nested classes can lead to more readable and maintainable code (places the code closer to where it is used)

*

Infopulse Training Center


Слайд 5Static Nested Classes (1 of 2)
A static nested class is associated

with its outer class
Like static class methods, a static nested class cannot refer directly to instance variables or methods defined in its enclosing class - it can use them only through an object reference

*

Infopulse Training Center


Слайд 6Static Nested Classes (2 of 2)
Static nested classes are accessed using

the enclosing class name:
OuterClass.StaticNestedClass
To create an object for the static nested class, use this syntax:
OuterClass.StaticNestedClass nestedObject =
new OuterClass.StaticNestedClass();

*

Infopulse Training Center


Слайд 7Inner Classes (1 of 2)
An inner class has direct access to

that object's methods and fields
It cannot define any static members itself
Objects that are instances of an inner class exist within an instance of the outer class

*

Infopulse Training Center


Слайд 8Inner Classes (2 of 2)
To instantiate an inner class, you must

first instantiate the outer class. Then, create the inner object within the outer object with this syntax:
outerClass.InnerClass innerObject = outerObject.new InnerClass();

*

Infopulse Training Center


Слайд 9Local Inner Classes
Inner classes can be created inside code blocks, typically

inside the body of a method
A local inner class cannot have an access specifier
It does have access to the final variables in the current code block and all the members of the enclosing class

*

Infopulse Training Center


Слайд 10Anonymous Classes
Anonymous classes combine the process of definition and instantiation into

a single step
As these classes do not have a name, an instance of the class can only be created together with the definition

*

Infopulse Training Center


Слайд 11Anonymous Class Example I
new Thread(new Runnable() {
public void

run() {
...
}
}).start();

*

Infopulse Training Center


Слайд 12Anonymous Class Example II
JFrame frame = new JFrame("AnonimDemo2");
frame.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {
System.exit(0);
}
});

*

Infopulse Training Center


Слайд 13Anonymous Classes Use
For creating objects on the fly in contexts such

as:
the value in a return statement
an argument in a method call
in initialization of variables
to implement event listeners in GUI-based applications

*

Infopulse Training Center


Слайд 14Manuals
http://docs.oracle.com/javase/tutorial/java/javaOO/nested.html

*
Infopulse Training Center


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика