Java is an industry standard, high level cross-platform programming language developed by Sun Microsystems and later acquired by Oracle.  Applications written in Java can be found everywhere from including desktops, mobile phones, and even appliances.

We will be sharing resources that have best served our learning and implementation experiences using Java.  We will only present websites, books, or other resources that we have evaluated or experienced first hand.

Java and Security

That Java’s legacy persists and continues to evolve to embrace the latest hardware and software technologies is a testament to it’s strength as an application development language.

Java programs are executed inside the Java Runtime Environment or JRE.  Always use the latest version of Java as each release typically addresses potential security threats.  After upgrading to the latest release, be sure to purge or remove any previous releases from your system.

Java 10 is the latest version available as of this writing with a new release (Java 11 – JDK 11) scheduled for September of 2018.

How to get Java

Installed Java SE Development Kit (64-Bit)To get started visit “Java Resources to Help Get Started“.  To download the latest copy of Java for your machine, visit the Oracle Technology Network where you will also find a wealth of resources to help you on your journey with Java.

As of this writing, the latest version of the Java Standard Edition (Jave SE) available for download is 10.0.2 (July 2018).  If you are a developer, select the Java SE Development Kit applicable to your operating system – Linux, Mac Os, Solaris SPARC, or Windows.

To learn more about Java visit the Oracle website.

Working with Java – Your IDE

Programming in Java is much easier with Interactive Development Environment or IDE and a number of options are available.  The NetBeans IDE is a highly capable IDE and is available from the Oracle download page.

NetBeans IDE 8.2 DownloadThe NetBeans IDE is a cross platform IDE (Windows, Linux (x86 / x64), Mac OS X, OS Independent Zip) that supports a variety of language technologies including Java SE, Java EE, HTML5 / JavaScript, PHP, and C / C++.  The NetBeans IDE makes it possible to add language technologies as required by your application.

Select the NetBeans Download Bundle that meets with your immediate requirements.  Note that the smallest installation package is specifically targeted for the Java Standard Edition (Java SE).

Eclipse is another free alternative cross-platform IDE and also supports a variety of language technologies.  For more information visit the Eclipse Foundation website.

Our IDE of choice is IntelliJ IDEA Ultimate by JetBrains.  IntelliJ IDEA is available in both free (Community) and paid (Ultimate) subscription formats.  IntelliJ supports a variety of JVM languages, Enterprise frameworks, Mobile development platforms, Web development languages, and a variety of tools including integrated version control.

You can try the IntelliJ IDEA Ultimate Edition for free and then decide whether this is the application that is right for you.  Visit the “Choose Your Edition” page to see a comparison between the Utlimate and Community Editions.

Regardless of the IntelliJ IDEA version you use, be sure to check the box to download the JRE by JetBrains.  Bug fixes are usually captured in the JetBrains version.

Learning Java – Resources that Worked for Us

Java – The Complete Reference, Tenth Edition by author Herbert Schildt.  Fully updated for Java SE 9 (JDK 9).  Oracle Press, McGraw-Hill Education (2017).  This is the comprehensive guide covers the entire Java language presenting all you need to know to work with the worlds most dominant and persistent programming language.

  • Java – The Complete Reference, Tenth Edition
  • Author:  Herbert Schildt
  • Publisher:  McGraw-Hill Education (Copyright 2018)
  • Pages:  1304
  • ISBN:  978-1-259-58933-1
Oracle and Java are registered trademarks of Oracle Corporation and / or its affiliates.

Related Articles and Resources

Glossary of Terms

  • API – Application Program Interface
  • JAF – JavaBeans Activation Framework
  • JNLP file – Java Network Launch Protocol
    • required to start an application using Java WebStart.
  • Java SE – Java Standard Edition
  • JDK – Java Development kit
  • JNDI – Java Naming and Directory Interface
  • JRE – Java Runtime Environment
  • JVM – Java Virtual Machine
  • RMI – Remote Method Invocation