Java Tutorial

Our Java Tutorial is designed for beginners and professional both. It will help you to understand the concepts and workflows of Java. No matter, whether you are a complete beginner or a professional Java developer.

This Java tutorial contains a maximum number of examples and annotated images on every topic so that you can easily get the topic. We have focused on the uniqueness and simplicity. We are committed to provide you a completly new and easy experience of learning. We have devided each tutorial into four sections Beginners, Intermediate, advanced and Pro. Just bookmark this page and stay connected. Sooner, you will be a pro Java developer.

Our Java tutorial inludes, objects, classes, methods, other basic Java cocepts, Java OOPs concepts, Java file handling, JDBC, Java collection and many more important topics. So let’s start with very basic of Java.

This section includes:

Introduction of Java Technology

Java is a programming language and a platform that is used to develop the mobile apps, web apps, desktop apps, games and many more applications. It is a high level language. It was developed by sun microsystem in 1995, later the Oracle Corporation acquired it in 2010.

What is Java?

Java is a high level programming language for developing the mobile apps, web apps, desktop apps, and many more. Writing, compiling, debugging program in Java is a straight forward process. It assists in creating modular programs and reuse of code. It can be run on different platforms such as Windows, MacOS, Linux| Unix based platforms.

Java is a platform independ language. The main motive of developing the Java language is to “write once and run anywhere”

How Java programs works

The Java source code is written in a plain text file having extensiion “.java”. This source code file is compiled by the javac compiler an generate a ‘.class’ file. The class file contains the byte code, this code does not native to our processor instead it is a machine code that is redable by the JVM (Java Virtual machine). The Java tool runs the application with the help of JVM. Beacuse, JVM supports different operating systems so this class file can be run on any operating system.

Image source- google

Java Platform

Java platform is a set of programs that assists in developing and running applications and programs written in Java programming language. A Java platform contains an execution engine, a compiler, set of libraries. As the Java is a platform independent language so these platforms are not specific to any operating system or processor.

There are four types of the Java platforms:

  • Java Platform, Standard Edition (Java SE)
  • Java Platform, Enterprise Edition (Java EE)
  • Java Platform, Micro Edition (Java ME)
  • Java FX

Types of Java

When we talk about types of Java , actually it is about the Java platforms. As we have discussed there are four types of Java platforms. let’s see each platform in a short:

Java SE (Standard Editon)

The Java SE platform includes Java SE API, a virtual machine, development tools, deployment technologies, and many other class libraries. The JDK (Java Development kit) is commonly used in Java applications.

The Java SE API contains the core functionality of the Java programming language. This API specifies the everything in Java inlclude the basic functionality to high level classes which are used for the Graphical user interface development, database access, security, networking connectivity, and many more.

Java EE (Enterprise Edition)

The Java enterprise edition is used to develop and execute the large-scale, reliable, secure, scalable, multi-tiered and network applications. It is built on advance level of Java SE. It provides an API and an environment (runtime) for developing the appications.

Java ME

The Java Micro Edition is used to develop the applications for the small devices like mobile phones. It provides an API and a little exposure of virtual machine for developing and running Java applications. The Java ME Api is a subset of the Java SE API along with some special library files which are useful for developing the applications. Java ME projects are are often a part of the Java EE services.

Java FX

The Java FX is used to create rich internet applications. These application are written in Java FX and ScriptTM. The Java FX Script is a kind of declarative language that is compiled to Java byte code. It can be run on Java VM. The applications which are written for the Java FX platform may contain java classes, and client of the Java Ee services.

Java Applications

Java is programming language which is used to create n types of applications. In other section we will focus on each types of application in detail. Primarily, it is devided in following four categories:

1) Standalone Application

The standalone apllications also referred as desktop applications or window-based apllications or system applications. These are the software packges develped for a specific purpose. Inorder to use it, we need to install it on our machine. Some widely known standalone applications are media players, antiviruses, and many more. The Java AWT and Swing technology is used to create the desktop applications.

2) Web Application

An application that runs on a server is called a web application. These applications contains dynamic web pages. The Java servlet, JSP, Struts, Spring, SpringBoot, Hibernate technologies are used to create a web application.

3) Enterprise Application

The Java Enterprise Applications are distributed in nature. These applications provides high-level security, load-balancing, clustering, and many more features. The example of the Java enterprise application are banking applications. Java EJB technology is used to create the Java enterprise applications.

4) Mobile Application

The Java mobile applications are the applications which are developed for the mobile devices. There are several Java mobile applications are available in the market. The Android and Java ME technology is used to develop the Java mobile applications.

Java Versions

Java programming language first developed in the 1995 with version 1.0. It got several updations and changes since version 1.0. the latest version is Java 14. later we will focus on every version in depth in Java version sections. A complete list of Java versions are as following:

VersionsRelease date
JDK Beta1995
J2SE 1.0January 1996
J2SE 1.1February 1997
J2SE 1.2December 1998
J2SE 1.3May 2000
J2SE 1.4February 2002
J2SE 5.0September 2004
JAVA SE 6December 2006
JAVA SE 7July 2011
JAVA SE 8 (LTS)March 2014
JAVA SE 9September 2017
JAVA SE 10March 2018
JAVA SE 11 (LTS)September 2018
JAVA SE 12March 2019
JAVA SE 13September 2019
JAVA SE 14March 2020

Features of Java

The Java programming langugae has sveral unique features which makes it special. Because of these unique features Java is irreplaceble till now. Later in Java features sections, we will explore each of its feature in details.

The following are some key features of the Java programming language:

  • Object Oriented
  • Simple
  • Platform Independent
  • Secure
  • Architecture-neutral
  • Robust
  • Portable
  • Multi-threaded
  • Distributed
  • Dynamic
  • High-performance

Usage of Java

Java is one of the most used programming languages in the world. Almost three billion devices runs Java across the world. It is designed in a way to use in a distributed environment over the internet. Java is the most favorable choice of Android developers. It is used as backend and frontened devlopement as well. Most of the web projects uses java as their backend languages. One more reason to use java is that we can develop almost every type of applications by using it. So we can say Java is almost everywhere from mobile phones to desktop applications. Java is never gonna outdated. So nowadays it is good to learn Java.

Why Java?

The fundamentl strenghth of Java is that it is easy to write and run. As it is platform independent so it can be run on any machine. The Java program can be run at any time on any machine. let’s consider following points to clear a picture that why you choose Java as programming language:

  • It can be used to create small to large-scale applications that can be run on a distributed environment across all servers.
  • It can be used to create mobile applications to desktop applications.
  • It supports different operating systems such as Windows, Linux OS, MacOS.
  • Once the Java is properly installed on you machine. It is easy to code in Java.
  • It facilitates with a maximum number of Java libraries that do almost anything.
  • The database connectivity using JDBC is far better and secure than other programming languages.
  • Java provides massive support to its users there are a large communities that provides supports and share related knowledge for the Java developer. There are almost ten millions + counting Java developers in the world.

Why Java is platform independent?

Java programming language is said as platform independent because the Java compiled code (byte code) can be run on different operating systems. Usually, the java program is in human-readable form. It may contain keywords, names, phrases which is not readable by the machine. To make this code understandable by the machine, we need to convert it in machine code. So this is done by the compiler. The compiler converts the high-level language into machine code. But the Java first converts it into byte code then machine code. The Java ‘.class’ file contains this byte code.

Why Java is not 100 % object oriented?

In general language Java is said as an object oriented language. But, Java is not purely object oriented language instead it is nearly object oriented. The reason because it supports primitive data types like int, float, double, and more. These data types are not object oriented. We will later deeply talk about data types in Java data types sections.

Why Java is dynamic?

The Java language is said as a dynamic language because of the Byte code, the the source code written in one platform can be run on a different platform. Tha Jvm loads the class file during runtime only. Hence Anythng that takes place during runtime is said as dynamic.

Why Java is robust?

Java is called a robust language because of its powerful memory management. Java does not support pointer explicitly that bypasses security dilemmas. Java soppot automatic garbage collection to eliminate objects which are not usable for java anymore.

Here, is the brief introduction of Java programming language. Now follow the following index to learn more. I suggest you to stick with this tutorial and learn it in the given sequence. Do not forget to bookmark this page.

Java Tutorial

Java Installation

  1. Install Java on mac
  2. Install Java in Linux
  3. Install Eclipse IDE
  4. Java Set Environment Variables

Core Java Tutorial | Java Tutorial for Beginners

  • Java Objects
  • Java Classses
  • java object vs classes
  • Java Variables
  • Java Operators
  • Java methods
  • Java keywords
  • Java datatypes
  • Java primitive types
  • Java inner class
  • Java wrapper Classes
  • Java statements (Control, Labeled)
  • Java Strings
  • Java Create Class
  • Java immutable class
  • Java Main methods
  • Java Comments
  • Java Pass by Value
  • Java Type casting
  • Java Booleans
  • Java Arrays
  • Java System Class
  • Java math
  • Java static and static import
  • Java this()
  • Java Super()
  • java final keyword
  • Java strictfp keyword

Java Oops Concept Tutorial

  • Java polymorphism
  • Java method overloading
  • Java method overriding
  • Java overloading vs overriding
  • java Inheritance
  • Java Abstraction
  • Java Interface
  • Java abstract vs Interface
  • Java Encapsulation
  • Java Package
  • Java API
  • Java access modifier
  • Java Constructor
  • Java aggregation
  • Java association
  • Java Recursion
  • Java instance initializer block

Java Intermediate tutorial

  • Java Enums
  • Java annotations
  • Java regular expressions
  • Java collections
  • Java Array List
  • Java Hashmap
  • Java Exceptions
  • Java File handling
  • Java multtithreading
  • Java serializations

More Than Intermediate

  • Java Awt
  • Java Swing Java autoboxing unboxing
  • Java datbase connectivity
  • Eclipse IDE
  • Netbeans IDE