OOPs, or Object Oriented Programming is a style of programming based on the concepts such as class, objects and many other concepts associated with these. Several OOPs concepts are used in Java and this article discusses the various OOPs concepts in Java.
Before going into the OOPs concepts in Java, let us have a brief look at data types in Java, String class in Java etc.
Data Types in Java
The term variables in Java denotes the reserved area allocated in memory or it is the name of a memory location. Data types in java represent the different values to be stored in the variables. There are two different types of data types in java, primitive data types and non-primitive data types.
String Class in Java
Strings are nothing but a sequence of characters in Java programming language and they are treated as objects. String class in java is meant for creating and manipulating these objects.
OOPs Concepts in Java
As explained earlier, OOPs methods help to design a program using classes and objects. It makes the software development easier and the maintenance effortless by providing the following concepts.
- Object: – Any entity with a state and behavior
- Class: – A group of Objects
- Inheritance: – An object inheriting all the behaviors of the parent object
- Polymorphism : – One task performed by different ways.
- Abstraction : – Hide internal details and show only the functionality
- Encapsulation : – Clubbing data and code into a single unit
Advantages of OOPs
- OOPs makes development and maintenance easier.
- Provides data hiding
- Provides ability to stimulate real world events more efficiently
Usually, in all java tutorials, you will be taught about OOPs concepts in detail. The following things will be taught in OOPs.
- Advantage of OOPs
- Naming Convention
- Object and class
- Method overloading
- static keyword
- this keyword with 6 usage
- Method Overriding
- Covariant Return Type
- super keyword
- Instance Initializer block
- final keyword
- Abstract class
- Runtime Polymorphism
- Static and Dynamic Binding
- Downcasting with instanceof operator
- Access Modifiers
- Object Cloning