---
title: Introduction
description: A guick intro to Java programming language
---

import { List, ListItemGood,ListItemBad } from '@/components/List'


**Java** is a powerful **general-purpose programming language**. It is used to **develop desktop and mobile applications, big data processing, embedded systems**, and so on. According to **Oracle**, the company that owns **Java**, **Java runs on 3 billion devices worldwide**, which makes Java one of the most popular programming languages.

To get started with Java programming, visit [Java Tutorials](/programs/introduction).

## Features of Java Programming


#### 1. Java is platform-independent

Java was built with the philosophy of "write once, run anywhere" (WORA). The Java code you write on one platform (operating system) will run on other platforms with no modification.

#### 2. An object-oriented Language

The object-oriented approach is one of the popular programming styles. In object-oriented programming, a complex problem is divided into smaller sets by creating objects. This makes Java code reusable, has design benefits and makes code easier to maintain.

#### 3. Java is fast

The earlier version of Java was criticized for being slow. However, the new version of Java is one of the fastest programming languages.

A well-optimized Java code is nearly as fast as lower-level languages like C/C++ and much faster than Python, PHP, etc.

#### 4. Java is Robust

Robust simply means strong. Java is robust because:

It uses strong memory management.

- There is a lack of pointers that avoids security problems.
- There is automatic garbage collection in java which runs on the Java Virtual Machine to get rid of objects which are not being used by a Java application anymore.
- There are exception handling and the type checking mechanism in Java. All these points make Java robust.

#### 5. Java is secure

Some of the high-level features for security that Java handles are:

- provides a secure platform for developing and running applications
- automatic memory management reduces memory corruption and vulnerabilities

#### 6. Large Standard Library

One of the reasons why Java is widely used is because of the availability of a huge standard library. The Java environment has hundreds of classes and methods under different packages to help software developers like us. For example,

- `java.lang` - for advanced features of strings, arrays, etc
- `java.util` - for data structures, regular expressions, date and time functions, etc
- `java.io` - for file i/o, exception handling, etc

---

## Applications of Java Programming

According to Oracle, the company that owns Java, Java runs on 3 billion devices worldwide, which makes Java one of the most popular programming languages.

#### 1. Android apps

Java programming language using Android SDK (Software Development Kit) is usually used for developing Android apps.

#### 2. Web apps

Java is used to create Web applications through Servlets, Struts or JSPs. Some of the popular web applications written in Java are Google.com, Facebook.com, eBay.com, LinkedIn.com, etc.

#### 3. Big Data Processing

You can use the popular software framework like Hadoop (which is written in Java) to process Big Data.

#### 4. Embedded Devices

Oracle's Java Embedded technologies provide platform and runtime for billions of embedded devices like televisions, SIM cards, Blu-ray Disc players, etc.

Besides these applications, Java is also used for game development, scientific applications (like natural language processing), and many others.

---

## How you can learn to code in Java?

#### 1. Learn Java from Javaistic

<span className="font-extrabold text-transparent bg-clip-text bg-gradient-to-br from-sky-400 to-indigo-500">Javaistic</span> offers a complete series of easy to follow Java tutorials along with suitable examples. These tutorials are targeted for absolute beginners with no prior knowledge of Java programming language.

#### 2. Learn Java from Books

It is always a good idea to learn to program from books. You will get the big picture of programming concepts in the book which you may not find elsewhere.

Here are some books we personally recommend.

- [**Java: The Complete Reference, Ninth Edition**](http://amzn.to/2mAdN34) - covers everything about Java, including syntax, keywords, and so on
- [**Thinking in Java (4th Edition)**](http://amzn.to/2mkvCCK) - best if you are switching from other programming languages
- [**Java 8 Pocket Guide: Instant Help for Java Programmers**](http://amzn.to/2mEszGG) - best to get quick answers

#### 3. Learn from Official Java Documentation

Oracle, the company that owns Java, provides quality Java documentation. The official documentation is continuously updated. However, it may not be the easiest of tutorials to follow for beginners.

## Java Programming Best Practices

You must be eager to learn Java by now. However, here are some tips and best practices to follow before you learn Java.

<List>
<ListItemBad> <b>Don't read Java tutorials and examples like a novel</b> : The only way to get better in programming is by writing a lot of code.</ListItemBad>
<ListItemGood> <b>Learn Java language the right way</b> : If you are switching from another programming language (let's say C#), don't write C# style code in Java. Also, check this article on <a href="http://www.ibm.com/developerworks/library/j-perry-writing-good-java-code/index.html">How to write good Java code?</a></ListItemGood>
<ListItemGood> <b>Join Java communities</b>: Once you get the hang of writing simple Java programs, join Java communities and forums. Then, try to solve other programmer's Java problems. It's a good way to expand your Java knowledge. Also, you can get help when you are stuck.</ListItemGood>
</List>

## Final Words

You cannot go wrong with learning Java. Its wide range of applications makes it the language of opportunities and possibilities.
