0% found this document useful (0 votes)
5 views6 pages

Overview of Java Programming Language

Java is a versatile, object-oriented programming language developed by James Gosling in 1995, initially aimed at creating a platform-independent language for embedded devices. It has evolved through numerous versions, with major features including garbage collection, a rich API, and support for mobile and web applications. Java's popularity stems from its ease of use, security, and strong community support, making it a preferred choice for developers worldwide.

Uploaded by

Pantham Vishnu
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views6 pages

Overview of Java Programming Language

Java is a versatile, object-oriented programming language developed by James Gosling in 1995, initially aimed at creating a platform-independent language for embedded devices. It has evolved through numerous versions, with major features including garbage collection, a rich API, and support for mobile and web applications. Java's popularity stems from its ease of use, security, and strong community support, making it a preferred choice for developers worldwide.

Uploaded by

Pantham Vishnu
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Java is a popular and powerful programming language, created in 1995.

It is owned by
Oracle

 The programming language Java was developed by James Gosling and his
team at Sun Microsystems in 1995.
 Initially the goal was to build a platform independent language for embedded
devices such as set-top boxes and televisions.
 After exploring C++ (which proved too heavy and too closely tied to platform
dependencies), the team embarked on an entirely new project code named the
“Green Project”.

Naming of Java:
 The project first used the name “Green” (internally “Green talk” with extension
.gt), then was renamed “Oak” (inspired by an oak tree outside Gosling’s office).
When Sun attempted to trademark “Oak,” they discovered it was already claimed
by Oak Technologies, so a further rename was needed.
 In an interesting session guided by a naming consultant, the team generated
dozens of candidate names. The name “Java” (after the Indonesian coffee bean)
emerged as the one that cleared legal review. Although Gosling’s preferred name
was “Lyric” and the team initially favored “Silk,” “Java” became the official
name.
Why Use Java?
 Java works on different platforms (Windows, Mac, Linux, Raspberry Pi, etc.)
 It is one of the most popular programming languages in the world
 It has a large demand in the current job market
 It is easy to learn and simple to use
 It is open-source and free
 It is secure, fast and powerful
 It has huge community support (tens of millions of developers)
 Java is an object oriented language which gives a clear structure to programs and
allows code to be reused called as WORA (Write Ones Runs Anywhere),
lowering development costs
 As Java is close to C++ and C#, it makes it easy for programmers to switch to Java
or vice versa
 Mobile applications (specially Android apps)
 Desktop applications
 Web applications
 Web servers and application servers
 Games
 Database connection
 And much, much more!

Java is a high-level, object-oriented programming language It is mostly used for


building desktop applications, web applications, Android apps and enterprise
systems.
Since the first public release of JDK (Java Development Kit) 1.0, Java has undergone
continual revision via the Java Community Process (JCP).
History of Java Versions

Release
Version Date Major Changes

JDK 1.0 Jan 1996 First official release of Java.

JDK 1.1 Feb 1997 Added inner classes, JavaBeans, JDBC, RMI.

J2SE 1.2 Dec 1998 Collections Framework, Swing GUI toolkit, JIT compiler.

J2SE 1.3 May 2000 HotSpot JVM, JNDI, Proxy classes.

J2SE 1.4 Feb 2002 Assert keyword, regex, NIO improvements.

Java SE 5.0 Sep 2004 Generics, enhanced-for loop, autoboxing, annotations.

Java SE 6 Dec 2006 Scripting support, JDBC 4.0, pluggable annotations.

Java SE 7 Jul 2011 Try-with-resources, binary literals, strings in switch.

Java SE 8 Mar 2014 Lambda expressions, Stream API, new Date-Time API.

Java SE 9 Sep 2017 Module system (Project Jigsaw).

Local-variable type inference (var), performance


Mar 2018
Java SE 10 enhancements.

Java SE 11
Sep 2018 HTTP Client API, TLS 1.3, Flight Recorder.
(LTS)

Java SE 12 Mar 2019 Switch expressions (preview), JVM GC improvements.

Java SE 13 Sep 2019 Text blocks, improved switch expressions.

Java SE 14 Mar 2020 Records (preview), pattern-matching


Release
Version Date Major Changes

for instanceof (preview).

Sealed classes (preview), hidden classes, Foreign-Function


Sep 2020
Java SE 15 & Memory API (incubator).

Finalised records and pattern matching for switch


Mar 2021
Java SE 16 (preview).

Java SE 17
Sep 2021 Finalised sealed classes, improved rendering on macOS.
(LTS)

Java SE 18 Mar 2022 Further language and library enhancements.

Java SE 20 Mar 2023 Incubator/preview features, part of rapid-release cadence.

Java SE 21
Sep 2023 Several previewed features from earlier versions matured.
(LTS)

Java SE 24 Mar 2025 Latest public release as of writing.

First java Program:

// A Java program to print Hello World!

public class HelloWorld {

public static void main(String[] args) {

[Link]("Hello World!");

Output:
Hello World!
 Write code in a file like [Link].
 Java Compiler "javac" compiles it into bytecode "[Link]".
 JVM (Java Virtual Machine) reads the .class file and interprets the bytecode.
 JVM converts bytecode to machine readable code i.e. "binary" (001001010) and then
execute the program.

Comments in Java:
Comments are the notes written inside the code to explain what we are doing. The
comment lines are not executed while we run the program.
Single-line comment
// This is a comment
Multi-line comment
/*
This is a multi-line comment.
This is useful for explaining larger sections of code.
*/
Comparison of C,C++ and Java:

Parameter C C++ Java

Programming Procedural Multi-paradigm Purely Object-Oriented


Paradigm (procedural & (OOP)
OOP)

Platform Dependency Platform-dependent Platform- Platform-independent


dependent (WORA)

Compilation/Execution Compiled to machine Compiled to Compiled to bytecode,


code machine code then interpreted by
JVM

Memory Management Manual Manual Automatic (Garbage


(malloc(), free()) (new, delete) Collector)
and smart
pointers

Pointers Heavily supported Supported Not explicitly


supported (uses
references)

Multiple Inheritance No built-in support Supported Achieved via


interfaces, not classes

Operator Overloading Not supported Supported Not supported

Primary Use Cases OS development, Game Enterprise


embedded systems, development, applications, Android
drivers high-performance apps, web apps
systems,
simulations

You might also like