Spec-Zone.ru › OpenJDK 25

Класс 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

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

Card

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

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

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

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 — если command имеет значение null
CardException — если операция с картой завершилась неудачно
IllegalStateException — если этот объект карты был освобожден вызовом метода disconnect()

disconnect

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

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, включая общие сведения, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.smartcardio/javax/smartcardio/Card.html

Spec-Zone.ru

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