• Home
  • Subscribe
  • Contribute Us
    • Share Your Interview Experience
  • Contact Us
  • About
    • About CSEstack
    • Campus Ambassador
  • Forum & Discus
  • Tools for Geek
  • LeaderBoard
CSEstack

What do you want to Learn Today?

  • Programming
    • Tutorial- C/C++
    • Tutorial- Django
    • Tutorial- Git
    • Tutorial- HTML & CSS
    • Tutorial- Java
    • Tutorial- MySQL
    • Tutorial- Python
    • Competitive Coding Challenges
  • CSE Subject
    • (CD) Compiler Design
    • (CN) Computer Network
    • (COA) Computer Organization & Architecture
    • (DBMS) Database Management System
    • (DS) Data Structure
    • (OS) Operating System
    • (ToA) Theory of Automata
    • (WT) Web Technology
  • Interview Questions
    • Interview Questions- Company Wise
    • Interview Questions- Coding Round
    • Interview Questions- Python
    • Interview Questions- REST API
    • Interview Questions- Web Scraping
    • Interview Questions- HR Round
    • Aptitude Preparation Guide
  • GATE 2022
  • Linux
  • Trend
    • Full Stack Development
    • Artificial Intelligence (AI)
    • BigData
    • Cloud Computing
    • Machine Learning (ML)
  • Write for Us
    • Submit Article
    • Submit Source Code or Program
    • Share Your Interview Experience
  • Tools
    • IDE
    • CV Builder
    • Other Tools …
  • Jobs

Introduction, Features and Characteristics of Java | OOPs Concepts

Heena Rajpal/41964/7
CodeJAVA

Java is an object-oriented programming language developed by Sun Microsystems in 1991 by James Gosling, Patrick Naughton, Chris Warth, Ed Frank, and Mike Sheridan. (Wiki)

Java is one of the simplest languages for beginners to start with. In this section, I will ponder on Object-Oriented features and characteristics of Java.

Java is very similar to C and C++ in the beginning but provides much additional functionality. Hence, prior knowledge of these languages will be a plus point while learning Java.

But, if this is your first programming language, you don’t need to worry. I will guide you through every required detail for a beginner.

Table of Contents

  • Why is Java Called Java?
  • Object-Oriented Features Of Java
  • Feature and Characteristics of Java
  • Is Java a pure object-oriented programming language?

Why is Java Called Java?

In 1991, the language was named OAK to symbolize the tree outside Gosling’s office. In 1995, the name changed to JAVA which comes from Java Coffee.

Let us have a quick glance at the features and characteristics of Java.

Object-Oriented Features Of Java

Since it is an object-oriented language, it will support the following features:

  • Class
  • Object
  • Encapsulation
  • Abstraction
  • Inheritance
  • Polymorphism

An object is a real-world entity that has three basic characteristics: Identity, State, and Behaviour.

A class is a collection of objects. We will study classes in detail in further modules of this tutorial.

The process of grouping these attributes and behaviors into a single unit is known as encapsulation.

This process of sustaining only essential and relevant information and discarding the rest is known as abstraction.

When one class acquires properties of another class, it is known as inheritance. The class that gives the properties is called a superclass and the class that acquires the properties is called a subclass. The major benefit of inheritance is the reusability of code.

The last major concept of object-oriented programming is polymorphism. ‘Poly’ means many and ‘morph’ means forms. This means it has statements that have many forms or the same statements can have different meanings in different contexts.

This is all about the OOPs concept. These points are good enough for a beginner to kick start learning the Java programming language. If you want to know in detail, you can read Object-Oriented Programming in detail.

Feature and Characteristics of Java

Apart from the above object-oriented features, JAVA is also:

  1. Platform Independent

Why is Java Platform Independent Language?

Java is Write Once Run Anywhere (WORA) language. This means that once the code is written and compiled, it can be executed on any platform including Windows, Linux, Mac/OS, etc.

  1. Portable

The bytecode can be ported to any operating system.

  1. Simple

Since its syntax resembles C and C++ programming, it is simple to learn.

  1. Secure

Unlike C++, Java doesn’t support explicit pointers since explicit pointers were seen as a threat to security. Implicit pointers still exist but users cannot define pointers making the language more secure.

  1. Robust

It has various facilities for automatic garbage collection so that the users do not have to create destructors. It also has strong type checking and exception handling making it a robust language.

  1. Multithreading

Threads are independent small programs or subprograms of a program. When these threads are run concurrently, the process is called multithreading.

  1. Architecture Neutral

We have seen in C and C++ that the size of integers, float, and other variables varies according to the architecture of the system in bits. Java has the same size as any type of variable across all possible architectures.

Java also performs better and can be used to create distributed applications.

Is Java a pure object-oriented programming language?

There is a lot of buzz in the programming community whether Java is a pure object-oriented programming language or not.

It is important to note that Java is an object-oriented language but not a purely object-oriented language. Java supports the creation of objects as well as primitive data types like int, float, char, etc.

A purely object-oriented language will support the creation of objects only.

This is the introduction to Java where we have covered characteristics of Java and its object-oriented concepts. Before moving to the next section of this tutorial, if you have any questions, write in the comment section below.


« Java Tutorial Java Installation and Setup »

JavaOOPs Concept
Heena Rajpal
Heena Rajpal is pursuing Computer Science Engineering from Indore. She has a knack for writing and an inquisitive outlook towards Computer Science fields like Database Management Systems, Object Oriented Programming and languages like C, C++, JAVA, Python, HTML etc.

Your name can also be listed here. Got a tip? Submit it here to become an CSEstack author.

Comments

  • Reply
    Priya
    November 25, 2017 at 5:28 am

    It’s very useful and let me know some feature of java. So thank to who upload this and thank also to Java.

  • Reply
    aneesa
    February 28, 2018 at 2:08 am

    Thanks a lot!

  • Reply
    mayur
    July 23, 2018 at 10:50 am

    Great article! I want to start career in java programming and so was looking for ‘what makes java different from other languages in features’. Here found your article very interesting and helpful as java beginner. Thanks a lot for sharing this!

  • Reply
    Rama
    December 20, 2020 at 11:50 am

    It is very nice explanation for the beginner! Thanks a lot!

  • Reply
    tharun
    April 6, 2021 at 8:04 am

    What is the difference between reference and pointer?

    • Reply
      May 27, 2022 at 10:27 am

      pointer: it is a special variable that holds the address of another variable as the value.
      for example, int *p = pointer storing integer value

  • Reply
    Augustino
    September 16, 2021 at 10:41 am

    It is very interesting to learn this as I AM a beginner of computer science college.

Leave a Reply Cancel reply

Basic Java Tutorial

  1. Java- Tutorial Overview
  2. Java- Features & Characteristics
  3. Java-  Installation & Setup
  4. Java- Hello, World Program!
  5. Java- JDK vs JVM vs JRE
  6. Java- Data Types & Variables
  7. Java- String & its Methods
  8. Java- Different Operators Types
  9. Java- Flow Control Statements
  10. Java- Array
  11. Java- Exception Handling
  12. Java- ‘throw’ vs ‘throws’ Keyword
  13. Java- RegEx
  14. Java 12- New Advanced Features

Java OOPs concepts

  1. Java- OOPs Introduction
  2. Java- Classes & Objects
  3. Java- Constructor & Overloading
  4. Java- Method Overload vs Override
  5. Java- Access Modifiers
  6. Java- Abstraction
  7. Java- Inheritance
  8. Java- Interfaces
  9. Java- Nested Inner Classes

Java Advanced

  1. Java- Applet vs Application
  2. Java- HashMap Collections
  3. Java- ArrayList
  4. Java- LinkedList
  5. Java- HashSet
  6. Java- HashMap vs HashSet
  7. Java- Reverse Linked List

Java Exercise

50+ Java Coding Questions [Practice]

Java Projects

Patient Billing Software

© 2022 – CSEstack.org. All Rights Reserved.

  • Home
  • Subscribe
  • Contribute Us
    • Share Your Interview Experience
  • Contact Us
  • About
    • About CSEstack
    • Campus Ambassador
  • Forum & Discus
  • Tools for Geek
  • LeaderBoard