What Is JDK

This section describes what is JDK (Java Development Kit) - a development environment for building software applications and software components using the Java programming language.

What Is JDK (Java Development Kit)? JDK is short name for Java™ Platform, Standard Edition Development Kit (JDK™), developed and distributed by Oracle. It is a development environment for building software applications and software components using the Java programming language.

JDK includes the following components:

JRE (Java Runtime Environment) - JRE allows you to run Java applications. The JRE uses HotSpot as the JVM (Java Virtual Machine) implementing the JVM specification.

See "JVM Tutorials - Herong's Tutorial Examples" book at herongyang.com/JVM for more tutorials on JRE.

JCL (Java Class Library) - JCL is a set of dynamically loadable libraries that Java applications can call at run time. JCL is organized into Java packages. Some packages are wrappers to access native operating system APIs like java.io.*, java.net.*, java.awt, etc.

Tutorials on JCL are provided in this book.

Java Development Tools - Tools includes Java compiler, JAR tool, class file disassembler, debugger, JRE builder, etc.

See "Java Tools Tutorials - Herong's Tutorial Examples" book at herongyang.com/Java-Tools for more tutorials on Java tools.

JDK versions and release dates:

JDK (Java SE) 10   March 20, 2018
JDK (Java SE) 9    September 21, 2017
JDK (Java SE) 8    March 18, 2014
JDK (Java SE) 7    July 28, 2011
JDK (Java SE) 6    December 2006
JDK (J2SE) 5.0     September 2004
JDK (J2SE) 1.4     February 2002
JDK (J2SE) 1.3     May 2000
JDK (J2SE) 1.2     December 1998
JDK 1.1            February 1997
JDK 1.0            January 1996

Last update: 2018.

Table of Contents

 About This JDK Tutorial Book

JDK (Java Development Kit)

What Is JDK

 Downloading and Installing JDK 10

 Writing My First Java Program

 Adding JDK "bin" Directory to Path Setting

 JDK Documentation Installation

 Java Date-Time API

 Date, Time and Calendar Classes

 Date and Time Object and String Conversion

 Number Object and Numeric String Conversion

 Locales, Localization Methods and Resource Bundles

 Calling and Importing Classes Defined in Unnamed Packages

 HashSet, Vector, HashMap and Collection Classes

 Character Set Encoding Classes and Methods

 Character Set Encoding Maps

 Encoding Conversion Programs for Encoded Text Files

 Java Logging

 Socket Network Communication

 Datagram Network Communication

 DOM (Document Object Model) - API for XML Files

 SAX (Simple API for XML)

 DTD (Document Type Definition) - XML Validation

 XSD (XML Schema Definition) - XML Validation

 XSL (Extensible Stylesheet Language)

 Message Digest Algorithm Implementations in JDK

 Private key and Public Key Pair Generation

 PKCS#8/X.509 Private/Public Encoding Standards

 Digital Signature Algorithm and Sample Program

 "keytool" Commands and "keystore" Files

 KeyStore and Certificate Classes

 Secret Key Generation and Management

 Cipher - Encryption and Decryption

 The SSL (Secure Socket Layer) Protocol

 SSL Socket Communication Testing Programs

 SSL Client Authentication

 HTTPS (Hypertext Transfer Protocol Secure)

 Outdated Tutorials

 References

 Full Version in PDF/EPUB