русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Вложенные и внутренние классы


Дата добавления: 2015-01-08; просмотров: 506; Нарушение авторских прав


В Java имеется возможность определять один класс внутри другого. Такие классы называются вложенными. Вложенный класс имеет доступ ко всем компонентам включающего класса. Обратное утверждение не верно.

Существует два вида вложенных классов – статический и нестатический. При объявлении статического класса используется ключевое слово static. Этот класс не может прямо обращаться к членам включающего класса, а должен это делать через объект. В связи с этим используется редко.

Другой тип вложенного класса это внутренний нестатический класс. Этот класс находится полностью в области видимости включающего класса и может обращаться ко всем его компонентам. Приводимая ниже программа демонстрирует этот тип вложенности.

class Ext // внешний класс Ext

{

int a=4; // объявление и явная инициализация

public int b; // объявление и инициализация 0

void fun_Ext()

{ In ob= new In();

ob.fun_In();

System.out.println("vneshnyi class " + a+ b);

}

class In // вложенный класс In

{

int aa;

public int bb;

void fun_In()

{ System.out.println("vlogenyi class "+ a+ b);

}

}

}

public class start

{

public static void main(String[] args)

{ Ext ob=new Ext();

ob.fun_Ext();

}

}

Класс In известен только в пределах видимости класса Ext, следовательно попытка создать объект класса In, например, в функции main приведет к ошибке.

Вложенные классы могут быть объявлены не только в области влючающего класса, но и так же в пределах любого его блока – методы, циклы и т.д.

Вложенные классы наиболее полезны при обработке событий в апплетах.

Вложенные классы так же могут быть анонимными, не имеющими имен.

 



<== предыдущая лекция | следующая лекция ==>
Ключевое слово static | Как работает сборщик мусора


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.546 сек.