Java Card ist eine Variante der ProgrammierspracheJava, die es erlaubt, Java Card Applets, einem reduzierten Java-Standard folgend,Java Applets aufChipkarten auszuführen.
Java Card Applets werden nur ausgeführt, wenn eine Chipkarte an eine externe Stromversorgung angeschlossen ist und dieJava VM der Karte die Anweisung erhalten hat, ein bestimmtes Applet zu selektieren. Die Sicherheitsmechanismen von Java erlauben, dass eine Java Chipkarte mehrere Applets enthalten kann, die einander nicht beeinflussen, soweit die Speicherkapazität der Karte nicht überschritten wird. Java Card Applets können nachträglich auf einer Java-Chipkarte installiert werden und sind, wie Java-Programme, von derHardware der Chipkarte unabhängig. Java Card Applets kommunizieren ausschließlich über APDUs (Application Protocol Data Units) mit einem angeschlossenenKartenleser; ein mögliches Protokoll für diesen Datenkanal ist Java Card Remote Method Invocation, ein Protokoll zum Aufruf von Objektmethoden zwischen Java VMs.
Java Card Applets dienen primär der sicheren Speicherung und Anwendung vonkryptographischen Schlüsseln. Die Schlüssel können zu diesem Zweck auf der Chipkarte erzeugt werden und ein Auslesen der privaten Schlüssel aus der Karte wird nach Möglichkeit verhindert.