Проверка принадлежности к классу
В Java можно явно проверить, к какому классу принадлежит объект. Выражение foo instanceof Fooистинно, если объект foo принадлежит классу Foo или его наследнику, или реализует интерфейс Foo(или, в общем виде, наследует класс, который реализует интерфейс, который наследует Foo).
Далее, функция getClass(), определённая для всех объектов, выдаёт объект типа Class. Для каждого класса создаётся не более одного описывающего его объекта типа Class, поэтому эти объекты можно сравнивать. Так, например, foo.getClass() == bar.getClass() будет истинно, если объекты foo и bar принадлежат в точности к одному классу (но это не означает что это два одинаковых объекта).
Кроме того, объект типа Class любого типа можно получить так: Integer.class, Object.class.
Однако прямое сравнение классов не всегда является оптимальным средством проверки на принадлежность к классу. Зачастую вместо него используют функцию isAssignableFrom(). Эта функция определена у объекта типа Class и принимает объект типа Class в качестве параметра. Таким образом, вызов Foo.class.isAssignableFrom(Bar.class) вернёт true в случае, если Fooявляется предком класса Bar. Так как все объекты являются потомками типа Object, вызовObject.class.isAssignableFrom() всегда вернёт true.
В паре с упомянутыми функциями объекта типа Class используются также функции isInstance()(эквивалентно instanceof), а также cast() (преобразует параметр в объект выбранного класса).
- Определение асни. Типовая структура. Применение асни. Цели создания асни.
- Автоматизированные системы научных исследований (асни)
- Типовая структура
- Для чего нужны асни?
- Назначение и применение руководящих материалов
- Цели создания асни
- Определение, функции, принципы создания асни.
- Функции асни
- Структура асни
- Основные принципы создания асни
- Интеграция автоматизированных систем как асни,сапр ,сапр тп,асу,асу тп. Десять основных этапов, подлежащих автоматизации в асни.
- Примеры
- Системы автоматизации научных исследований
- Автоматизация экспериментов.
- Структурное развитие систем автоматизации экспериментов. Эволюция структур.
- Универсальная система автоматизации экспериментальных исследований.
- Структура аппаратных средств системы автоматизации эксперимента
- Окончательная конфигурация аппаратных средств и программного обеспечения
- Система сбора и первичной обработки данных
- Источники питания
- Система управления ходом физического эксперимента и развернутой обработки данных
- Программное обеспечение
- Описание работы системы
- Многофункциональная тиражируемая система автоматизации лабораторного эксперимента Назначение и область применения
- Структура и состав системы
- Особенности системы
- Примеры применения
- Автоматизированная система управления технологическим процессом.
- Система автоматизированного проектирования. Цели создания и задачи. Структура.
- Расшифровки и толкования аббревиатуры
- Английский эквивалент
- Цели создания и задачи
- Состав и структура По гост
- Система автоматизированного проектирования. Подсистемы. Компоненты и обеспесение.
- Компоненты и обеспечение
- Система автоматизированного проектирования. Классификация. Развитие рынка cad/cam/cae-систем. По гост
- Классификация английских терминов
- По отраслевому назначению
- По целевому назначению
- Периодические издания
- См. Также
- Примечания
- Наиболее распространённые cae-системы
- История развития
- Программная среда для разработки и запуска распределенных систем управления асни.
- Виды асни. Scada - система диспетчерского управления и сбора данных в реальном времени.
- Основные задачи, решаемые scada-системами
- Основные компоненты scada
- Концепции систем
- Некоторые распространенные scada
- Уязвимость
- Виды асни. Tango — распределенная система управления.
- Поддерживаемые языки программирования
- Лицензия
- Консорциум
- Использование в России
- Виды асни. Corba - поддержка разработки и развёртывания сложных объектно-ориентированных прикладных систем
- Назначение corba
- Общий обзор
- Ключевые понятия технологии Объекты по значению
- Компонентная модель corba (ccm)
- Общий протокол межброкерного взаимодействия (giop)
- Ссылка на объект (Corba Location)
- Языки асни. Java — объектно-ориентированный язык программирования.
- Написание в русском языке
- [Править]Основные особенности языка
- История версий
- Список нововведений
- Классификация платформ Java
- Применения платформы Java
- Производительность
- Основные возможности
- Пространство имён
- Пример программы
- Основные идеи Примитивные типы
- Преобразования при математических операциях
- Объектные переменные, объекты, ссылки и указатели
- Дублирование ссылок и клонирование
- Сборка мусора
- Классы и функции
- Статические методы и поля
- Завершённость (final)
- Абстрактность
- Интерфейсы
- Маркерные интерфейсы
- Шаблоны в Java (generics)
- Проверка принадлежности к классу
- Библиотеки классов
- Средства разработки по
- Спецификация jvm
- Конкуренция между Sun и Microsoft
- Разногласия между Sun и ibm
- Среда исполнения
- Виртуальная машина Parrot , используемая интерпретируемыми языками для эффективного исполнения байт-кода.
- Примеры Регистры
- Поддерживаемые платформы
- Операционные системы асни. Ли́нукс.
- Название
- Операционные системы асни. Unix.
- Коммерческий и общественный спрос
- Текущее развитие
- Логотип Linux
- Интерфейс пользователя
- Разработка
- Сообщество
- Программирование в Linux Применение
- Дистрибутивы Linux.
- Безопасность
- Критика со стороны Microsoft
- Типичная архитектура асни на примере х86 и др.
- Основные особенности архитектуры
- Сегментная организация памяти Реальный режим (real mode)
- Защищённый режим (protected mode)
- Режим виртуального 8086 (virtual 8086 mode, v86)
- Смешанные режимы
- Страничная организация памяти
- Расширения, применяемые в процессорах для работы в асни.
- Процессоры, применяемые для работы в асни. Процессоры Intel
- Процессоры amd
- Процессоры Harris Semiconductor
- Процессоры Cyrix
- Процессоры idt
- Процессоры oki
- Процессоры Rise Technology
- Процессоры via
- Процессоры nec
- Процессоры NexGen
- Процессоры SiS
- Процессоры Transmeta
- Процессоры umc
- Процессоры, выпускавшиеся в ссср и России[5]
- Процессоры blx ic Design/ict
- Производители
- Среда интерфейс командной строки Cygwin в Microsoft Windows для работы в асни.
- Описание
- История
- Интернационализация
- Работа с кириллицей
- Базовые функции интерфейсов программирования приложений операционных систем семейств Windows api для работы в асни.
- Общие сведения
- Технологии, доступные через Windows api
- История
- Платформы
- Функциональность
- Системные функции
- Сетевые функции
- Уникальные, передовые функции
- Безопасность
- Лицензии и распространение
- Области применения
- Solaris — компьютерная операционная система, используемая в асни.
- История
- Поддерживаемые архитектуры
- Графический пользовательский интерфейс
- Файловые системы
- Архитектура sparCv7
- Операционные системы, работающие на sparc
- Реализации с открытым кодом
- Суперкомпьютеры
- Свободная Unix-подобная операционная система FreeBsd, используемая в асни.
- История
- Версии системы
- Модель разработки FreeBsd
- Варианты установки
- Порты и пакеты
- Талисманы-логотипы
- Производные системы
- Универсальная система анализа, трансформации и оптимизации программ в асни Low Level Virtual Machine (llvm).
- История
- Особенности
- Платформы
- Типы данных Простые типы
- Производные типы
- Операции
- Операции с указателями
- Литература
- Журналы