Describe OOP in java?

Answer Posted / javamasque

OOP means object oriented programming, where objects play active role to fulfill request of the user. As per the OOP concept, objects have the below 4 features

Encapsulation: Objects have the ability to hide its state (properties) and behavior (methods) with the use of access modifier.

Inheritance: It is a technique to define child class / interface by extending parent class / interface. As a class implements interface is also comes under inheritance. It helps to override legacy method or abstract method with new functionality. It also facilitates the child class to access protected members of its parent.

Polymorphism: It means to overload or override the behaviors (method) of a class. There are two types of polymorphism
• Static / Compile time: To overload a method with in same class in called static or compile time polymorphism. As we call overloaded method, compiler knows which overloaded method will be called.
Example
1.Class A has two method suppose sum(int n1, int n2), sum(long n1, long n2)
2.You created instance of class A inside main method and statically called either as below
A a = new A();
a.sum1(2, 3) or a.sum(2l, 3l)
3.Hence compiler knew which overloaded method called.
• Dynamic / Run time: To override a method using inheritance is called dynamic or runtime polymorphism. Override method execution is decided at run time hence JVM can decide which override method should be called.
Example
1.Class A has a method sum() and do addition of two integers.
2.Class B is child class of A and override sum() method and do addition of two float numbers.
3.There is an another class C which has main method and inside main method we have below code snippet
A a = new B();
a.sum();
4.Now compiler knows it is method of class A will be called but at runtime the override method of class B will be called, as instance of class A will be bound with the reference of class B at runtime dynamically.
5.Hence Overriding is called dynamic or runtime polymorphism.

Is This Answer Correct ?    1 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What do you understand by access specifiers in Java?

577


How do you compare characters in java?

513


Can we have multiple classes in a single file?

505


Difference between final and effectively final ? Why is effectively final even required ?

544


Where is the find and replace?

525






How list contains works in java?

548


What is meant by javabeans?

606


Can I override protected method in java?

587


What do you mean by light weight and heavy weight components?

547


What are access specifiers available in java?

569


Is passing by reference faster?

517


What does 3 dots mean in java?

503


What is string in java?

550


What is the functionality of the stub?

563


What value is a variable of the string type automatically initialized?

604