New to Java Programming Center

The New to Java Programming Center assists developers who are new to the Java language and platform nderstand the various technologies, and create Java applications.

The Java Programming Language and the Java Platform

Java is a high-level language and software-only platform. It runs on more than 50 million personal computers and on billions of devices worldwide. 9 million developers have created Java applications in all major industries.

The two main components of the Java platform are the Java Application Programming Interface (API), which is a library of Java command lines and the Java Virtual Machine (JVM) that interprets Java code into machine language.

The same application can run on multiple platforms

JVM

The API and the JVM make the program independent from the underlying hardware

Java Platform

Jump into Java

Code a “Hello World” application in Java. Follow these step-by-step instructions to quickly create your first application using a text editor in Windows or with NetBeans Integrated Development Environment (IDE).

Learn Java programming with The Java Tutorials, a comprehensive source for Java language concepts. Object-oriented and Java programming are explained with graphics and code examples.

Pick the right tool. Professionals use NetBeans IDE, an Oracle full-featured Java development software program and JavaFX, a client platform to create and deploy rich Internet applications. Beginners use visual educational tools such as Alice, Greenfoot and BlueJ. The Young Developers page summarizes the tools and learning resources for each software tool.


Recommended books:

  • “Core Java, Volume I - Fundamentals (9th edition) by Cay Horstmann and Gary Cornell
  • “Core Java, Volume II – Advanced Features (9th edition) by Cay Horstmann and Gary Cornell
  • “Head first Java” by Kathy Sierra and Bert Bates
  • "Thinking in Java" by Bruce Eckel
    Oracle Java Magazine book section

Java Platform, Standard Edition (Java SE)

Java SE lets its users develop and deploy Java applications on desktops and servers, as well as embedded environments. Java SE contains the core of the Java programming language libraries.

The components of Java SE are Java Development Kit (JDK), Java Runtime Environment (JRE) and Java SE application programming interface (API). JDK contains the JRE and the compilers and debuggers necessary for developing applets and applications. JRE provides the libraries, the Java Virtual Machine (JVM) and the components needed to run Java applets and applications. (See graphic below)

Java SE Conceptual Diagram

Java SE Graphic

Learn Java SE

Review essential Java concepts like concurrency, expressions, collections, arrays, generics and more with the Java Tutorials. They cover all those advanced concepts with detailed explanations and code examples. A Java Glossary is also available with a list of definitions.

Create a Java application in NetBeans with this step-by-step tutorial. It also explains the NetBeans development tool and techniques. Learn how to build real-world business applications with the Java SE hands-on workshop. It offers detailed lab instructions and exercises as well as a comprehensive overview of Java SE

Oracle offers developer events around the world. Check the upcoming events calendar to attend an event in your area. Attend the Virtual Technology Summit, a live event available for different time zones. Check out the next Virtual Technology Summit

A number of lessons are available to prepare beginners for three Java certifications. With explicit explanations and examples, these lessons cover basic and advanced Java subjects as well as the latest features in Java 8 and are a good way of testing your Java knowledge.

Recommended Readings:

JavaFX, Java User Interface Platform

JavaFX is an advanced Java user interface platform for enterprise business applications. Developers using Java for both the server and client side can build more robust and reliable applications.

User Interface with the Scene Builder designer tool

Use JavaFX Scene Builder, a visual layout tool to quickly design user interfaces without coding. Users can drag and drop UI components to a work area, modify their properties, and apply style sheets. This Getting Started tutorial teaches beginners how to create complex user interfaces (e.g. lists, table views, toolbar) and connect to application logic

Code the User Interface

To create JavaFX applications, developers must install the Java Development Kit (JDK) 8, which includes Java Runtime Environment (JRE), to run the JavaFX tools, samples and applications. Code the "Hello World" application with JavaFX and NetBeans 7.3 by following this text-based tutorial. Continue with the animation of the UI controls with JavaFX Markup Language (FXML) and its application programming interface (API). Explore and choose the UI controls and follow the Getting Started tutorials to create forms, a simple user interface, animations and visual effects. Download and modify the JavaFX sample applications, which are business interface examples that users can experiment with.

Learn tips and tricks with the video below from JavaFX architect Richard Bair.

Java Platform, Enterprise Edition (Java EE)

Java Platform, Enterprise Edition (Java EE) is the industry standard for building web and enterprise applications. Java EE 7 offers new features that enhance HTML5 support, increase developer productivity, and further improves how enterprise demands can be met. Java EE 7 developers will write less boilerplate code, have better support for the latest Web applications and frameworks, and gain access to enhanced scalability and richer, simpler functionality. Enterprises will benefit from new features that enable portable batch processing and improved scalability.

Java Platform, Enterprise Edition (Java EE)

Learn the basic concepts of Java EE platform. Some of the key concepts include Java Persistence API for database integration, EJB for security and transactions, JAX-RS for Restful web-services, servlets and JavaServer Pages. The article Java Technology Terminology has easy to scan definitions. The Java Tutorials provide useful first steps for developers.

Build a First Java EE Application

Create simple Java EE 7 applications using NetBeans IDE. Java Server Page (JSP), Servlets and Enterprise Java Beans (EJB) are key concepts to build this application. The GlassFish community website offers Java EE Java EE hands-on labs The video below presents Java EE samples deep dives.

Using NetBeans, the Java EE 7 sample is a comprehensive set of tutorials, screencasts, articles and code sample to learn everything about Java web application development. Create dynamic pages with JavaServer Pages (JSP), servlets, HTML5, JavaScript and JavaBeans and integrate applications with databases and web-services.

Training videos are available for free online

Recommended Readings:

Java Embedded and Java ME

From printers and bank machines to e-book readers and cars, Java technology is predominant in today’s embedded systems. It's in 5 billion SIMs and Smart Cards, 3 billion mobile handsets, 80 million TV devices, including every Blu-ray player shipped, and many other embedded solutions. Three technologies are designed for embedded systems: Java SE Embedded for devices with 32MB; Java ME Embedded for devices with 8MB and Java Embedded Suite for devices connecting to a database. Java ME is an environment for applications running on mobile and embedded systems.

Java SE Embedded and small devices

In the Java Magazine Internet of Things (IoT) issue, Henrik Stahl discusses IoT for Java developers. Learn how to build smart home applications with the Eclipse SmartHome project, a flexible opensource platform for building mass-market solutions. In his blog, Java architect Hinkmond Wong describes IoT technologies and how to create innovative Java and IoT projects.

Lego Mindstorms EV3 kits are a great way to start programming sensors with Java. Videos, guide and downloads are available here. Another way to start is with the Raspberry Pi, a single computer board. In an article, Java Evangelist Angela Caicedo explains " how to become an embedded developer in minutes." A video series from Senior Engineer Vinicius Senger walk you through the ins and outs of the Raspberry Pi and how to build a project.

Java developers gave detailed JavaOne talks about building applications with small open-source devices such as Arduino, Nao Robot, Raspberry Pi and more. Here is the list of talks you can watch for free at JavaOne Technical Sessions:

  • How to Talk to Your House [CON11218]
  • James Gosling, Robots, the Raspberry Pi, and Small Devices [UGF8907]
  • Java Speaks the Language of the Internet of Things [CON11348]
  • Internet of Things Magic Show [CON4636]
  • Smart Homes for the Masses [CON3213]
  • Bridging the Worlds of IT and Robotics [CON3922]
  • Fiction or Reality? Gesture Control and the New Wave of 3-D Camera Devices [CON2526]
  • Having Fun with NAO Robot and Java [HOL12424]
  • Programming the Real World [CON6378]
  • Have a Raspberry Pi? Make Your Own Connected Smart Sensor with Java ME Embedded [HOL3982]

Programming with Java ME on mobile devices

Start creating and running a first application with Java ME learning resources. To develop Java ME Embedded applications with the Raspberry Pi follow the Oracle Learning Library tutorial series. Take for free the first two lessons of the Massive Open Online Course (MOOC) on Java ME development on the Raspberry Pi. In an article, Jose Cruz describes how to connect sensors to the Raspberry Pi and control them with Java. Agus Kurniawan wrote the book tittled: Getting Started with Java ME Embedded 8 and Raspberry Pi.

Java Training and Certification from Oracle University 


Java Platform, Standard Edition (Java SE)

Oracle University is your single source for Java training and certification. Courses are available for those getting started and offer the perfect opportunity for you to get hands-on experience developing applications using the latest Java technology. Training is also aligned with Java certifications so you can easily validate your newly acquired skills.

Stay tuned on the technology, connect with professionals and peers and learn about open-source

Events

  • JavaOne Conference is the Java industry leading conference organized by Oracle.
  • DeveloperDays are one day hands-on-labs about Oracle products and technologies

Newsletter & Online Magazine

  • Java Magazine, an online magazine about Java technology, the Java programming language and Java-based applications

Blogs

  • Planet JDK Blogs: A collection of blogs that showcase news and views from the Java SE Development Kit community
  • The Java Source: Blog about general news about Java Developer Forums They are organized by technology.

Community Networks

Open Source Project

  • Open JDK is an implementation of the Java Platform, Standard Edition. Community members give their feedback and contribute code to the open source project, which is under General Public License (GPL)

Oracle Forums

  • Oracle Forums are a great place to get help for projects, share your programming expertise, and get to know your fellow developers
Young Developer - Visual Programming Software Tools

Young Developer - Visual Programming Software Tools

Young people are learning programming languages from the earliest ages and up. These tools and web sites teach young people how to program using the Java programming language, and Java-based languages developed for ease of use.

New Technologies and Communities!

  • Scratch, a simple programming language with drag-and-drop interface
  • No Programming Experience – Simplest tools for ages 5 - 15
  • Greenfoot, a visual 2D educational software tool with a code editor to create games and simulations.
  • No Programming Experience – Less simple for ages 13 - 25
  • Alice, a 3D educational software tool with a drag-and-drop interface to create animations.
  • No Programming Experience - Less simple for ages 8 - 22
  • BlueJ, a professional Java development tool with a simplified interface for beginners.
  • A Little Experience - Ages 15 - 25
  • NetBeans, a fully featured Java integrated development environment
  • Some Experience - Ages 15 - 25
Tools you can use to learn the Java Programming language.Online Alice and Greenfoot training is available

Other Resources

  • FreshBrain is a platform that aims to let teenagers explore different technology areas, create projects and share projects.
  • Freshbrain Developer
  • This site provides kids with an interactive, self-paced tutorial to the Java programming language.
  • Freshbrain Developer
  • Dr. Java is a lightweight development environment for writing Java programs and interactively evaluating Java code
  • Freshbrain Developer
Know More