IGNOU BCA MCA Students - VIVA Question Answer for JAVA or JSP
JAVA or JSP Selected Question Answer - PART I
JAVA Selected Question
Java is a computer programming language that is concurrent,
class-based and object-oriented. The advantages of object oriented software
development are shown below:
·
Modular development of code, which leads to easy maintenance and
modification.
·
Reusability of code.
·
Improved reliability and flexibility of code.
·
Increased understanding of code.
Object-oriented programming contains many significant features,
such as encapsulation, inheritance, polymorphismand abstraction. We analyze each
feature separately in the following sections.
Encapsulation
Encapsulation provides objects with the ability to hide their
internal characteristics and behavior. Each object provides a number of
methods, which can be accessed by other objects and change its internal data.
In Java, there are three access modifiers: public, private and protected. Each
modifier imposes different access rights to other classes, either in the same
or in external packages. Some of the advantages of using encapsulation are
listed below:
·
The internal state of every objected is protected by hiding its
attributes.
·
It increases usability and maintenance of code, because the
behavior of an object can be independently changed or extended.
·
It improves modularity by preventing objects to interact with
each other, in an undesired way.
Polymorphism
Polymorphism is the ability of programming languages to present
the same interface for differing underlying data types. A polymorphic type is a
type whose operations can also be applied to values of some other type.
Inheritance
Inheritance provides an object with the ability to acquire the
fields and methods of another class, called base class. Inheritance provides re-usability
of code and can be used to add additional features to an existing class,
without modifying it.
Abstraction
It is the process of separating ideas from specific instances
and thus, develops classes in terms of their own functionality, instead of
their implementation details. Java supports the creation and existence of
abstract classes that expose interfaces, without including the actual
implementation of all methods. The abstraction technique aims to separate the
implementation details of a class from its behavior.
Differences between Abstraction and Encapsulation
Abstraction and encapsulation are complementary concepts. On the
one hand, abstraction focuses on the behavior of an object. On the other hand,
encapsulation focuses on the implementation of an object’s behavior.
Encapsulation is usually achieved by hiding information about the internal
state of an object and thus, can be seen as a strategy used in order to provide
abstraction.
No comments:
Post a Comment