Concept of Abstraction

As a part of Java training, we will see the concept of abstraction in this particular blog. For an extensive course in Java, look for the best Java institute in Pune, that would offer best Java courses in Pune.

Moving on to the concept of abstraction, lets see it in detail.

In the world of computer science, abstraction is the procedure by which programs and data are characterized with a representation comparable in form to its significance (semantics), while hiding away the implementation elements.

An idea or a concept not related with a particular instance.

Abstraction from Java point of view:

In basic terms: “Abstraction catches just those insights around an object that are important to the present point of view.”

In object oriented programming hypothesis, abstraction includes the facility to characterize objects that represent to abstract “actors” that can perform work, cover and change their state, and “impart” with different objects in the framework.

Abstraction in any programming language works from numerous points of view. It can be seen from making subroutines to characterizing interfaces for making low level language calls. A few abstractions attempt to constrain the expansiveness of ideas a programmer needs, by totally concealing the abstractions they thus are based on, e.g. design patterns.

Different types of abstractions:

Abstraction can be carried out in these two ways.

  1. Control abstraction:

A software is basically a gathering of various statements written in any programming language. The majority of the times, statements are comparative and rehashed over spots numerous times.

Control abstraction is the way towards distinguishing every single such statements and uncover them as a unit of work. We regularly utilize this component when we develop a function to play out any work.

  1. Data abstraction:

Data abstraction is the best approach to make complex data sorts and uncovering just significant operations to communicate with data type, where as concealing all the execution details from outside works.

Advantage of this approach includes capacity of enhancing the execution after some time e.g. fathoming performance issues if any. The thought is that such changes shouldn’t have any effect on client code, since they include no distinction in theory conduct.

Using abstraction in Java:

Since abstraction is one of core standards of Object oriented programming practices, and Java taking after all OOPs standards, abstraction is one of real building blocks of Java language.

Data abstraction ranges from initiating simple data objects to complex gathering executions, for example, HashMap or HashSet. Likewise, control abstraction can be seen from characterizing basic function calls to finish open source structures. Control abstraction is fundamental compel behind structured programming.

Most examined themes with respect to reflection in Java incorporates abstract classes and interfaces.

In the event that you need to peruse more about abstract classes and interfaces in Java, take after the future posts Exploring interfaces and abstract classes in Java.

Abstract methods:

On the off chance that you need a class to contain a specific method however you need the real usage of that method to be controlled by child classes, you can declare the method in the parent class as an abstract.

Abstract watchword is utilized to pronounce the method as abstract.

You need to put the abstract keyword before the method name in the method affirmation.

An abstract method contains a method signature, yet no method body.

Rather than curly brackets, a unique strategy will have a semoi colon (;) towards the end.


public abstract class Employee {

private String name;

private String address;

private int number;

public abstract double computePay();

// Remainder of class definition


Hence, we saw the concept of abstraction as a part of Java programming basics. We will continue to see the various Java related concepts through these articles in the future as well.

Happy Learning !!