Spec-Zone.ru › OpenJDK 27

Класс Card

java.lang.Object
javax.smartcardio.Card
public abstract class Card extends Object
Смарт-карта, с которой установлено соединение. Объекты Card получают вызовом CardTerminal.connect().
С версии:
1.6
См. также:
  • CardTerminal

Краткое описание конструкторов

Card()
Модификатор Конструктор Описание
protected
Создает новый объект Card.

Краткое описание методов

Модификатор и тип Метод Описание
abstract void beginExclusive()
Запрашивает исключительный доступ к этой карте.
abstract void disconnect(boolean reset)
Разрывает соединение с этой картой.
abstract void endExclusive()
Освобождает исключительный доступ, ранее предоставленный с помощью beginExclusive.
abstract ATR getATR()
Возвращает ATR этой карты.
abstract CardChannel getBasicChannel()
Возвращает CardChannel для базового логического канала.
abstract String getProtocol()
Возвращает протокол, используемый этой картой.
abstract CardChannel openLogicalChannel()
Открывает новый логический канал карты и возвращает его.
abstract byte[] transmitControlCommand(int controlCode, byte[] command)
Передает управляющую команду терминальному устройству.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект какому-либо другому объекту.
protected void finalize()
Устарел, будет удален: этот элемент API подлежит удалению в будущей версии.
Финализация устарела и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.

Подробное описание конструкторов

Card

protected Card()
Создает новый объект Card.

Этот конструктор вызывается только подклассами. Приложению следует вызвать метод CardTerminal.connect(), чтобы получить объект Card.

Подробное описание методов

getATR

public abstract ATR getATR()
Возвращает ATR этой карты.
Возвращает:
ATR этой карты.

getProtocol

public abstract String getProtocol()
Возвращает протокол, используемый этой картой.
Возвращает:
протокол, используемый этой картой, например "T=0" или "T=1"

getBasicChannel

public abstract CardChannel getBasicChannel()
Возвращает CardChannel для базового логического канала. Номер базового логического канала — 0.
Возвращает:
CardChannel для базового логического канала
Вызывает исключение:
SecurityException — если существует SecurityManager и у вызывающего кода нет необходимого разрешения
IllegalStateException — если объект этой карты был освобожден вызовом метода disconnect()

openLogicalChannel

public abstract CardChannel openLogicalChannel() throws CardException
Открывает новый логический канал карты и возвращает его. Канал открывается отправкой команды MANAGE CHANNEL, которая должна использовать формат [00 70 00 00 01].
Возвращает:
открытый логический канал
Вызывает исключение:
SecurityException — если существует SecurityManager и у вызывающего кода нет необходимого разрешения
CardException — если не удалось открыть новый логический канал
IllegalStateException — если объект этой карты был освобожден вызовом метода disconnect()

beginExclusive

public abstract void beginExclusive() throws CardException
Запрашивает исключительный доступ к этой карте.

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

Приложения должны гарантировать корректное освобождение исключительного доступа. Для этого вызовы beginExclusive() и endExclusive можно поместить в блок try ... finally.

Вызывает исключение:
SecurityException — если существует SecurityManager и у вызывающего кода нет необходимого разрешения
CardException — если исключительный доступ уже установлен или его не удалось установить
IllegalStateException — если объект этой карты был освобожден вызовом метода disconnect()

endExclusive

public abstract void endExclusive() throws CardException
Освобождает исключительный доступ, ранее предоставленный с помощью beginExclusive.
Вызывает исключение:
SecurityException — если существует SecurityManager и у вызывающего кода нет необходимого разрешения
IllegalStateException — если текущий поток не имеет исключительного доступа к этой карте или если объект этой карты был освобожден вызовом метода disconnect()
CardException — если операция завершилась неудачно

transmitControlCommand

public abstract byte[] transmitControlCommand(int controlCode, byte[] command) throws CardException
Передает управляющую команду терминальному устройству.

Это можно использовать, например, для управления функциями терминала, такими как встроенная клавиатура для ввода PIN-кода или биометрические средства.

Параметры:
controlCode — управляющий код команды
command — данные команды
Возвращает:
ответ терминального устройства
Вызывает исключение:
SecurityException — если существует SecurityManager и у вызывающего кода нет необходимого разрешения
NullPointerException — если команда равна null
CardException — если операция с картой завершилась неудачно
IllegalStateException — если объект этой карты был освобожден вызовом метода disconnect()

disconnect

public abstract void disconnect(boolean reset) throws CardException
Разрывает соединение с этой картой. После возврата этого метода вызов методов этого объекта или связанных с ним CardChannels, требующих взаимодействия с картой, приведет к возникновению IllegalStateException.
Параметры:
reset — следует ли сбросить карту после отключения.
Вызывает исключение:
CardException — если операция с картой завершилась неудачно
SecurityException — если существует SecurityManager и у вызывающего кода нет необходимого разрешения

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания, ориентированные на разработчиков, с концептуальными обзорами, определениями терминов, обходными решениями и примерами работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API