Monday, February 13, 2012

Different properties provided by Objectoriented systems

Following are characteristic’s of Object Oriented System’s :-

Abstraction
It allows complex real world to be represented in simplified manner. Example color is
abstracted to RGB. By just making the combination of these three colors we can achieve
any color in world.It’s a model of real world or concept.

Encapsulation
It is a process of hiding all the internal details of an object from the outside world.

Communication using messages
When application wants to achieve certain task it can only be done using combination of
objects. A single object can not do all the task. Example if we want to make order processing
form.We will use Customer object, Order object, Product object and Payment object to
achieve this functionality. In short these objects should communicate with each other.
This is achieved when objects send messages to each other.

Object lifetime
All objects have life time.Objects are created ,and initialized, necessary functionalities
are done and later the object is destroyed. Every object have there own state and identity
which differ from instance to instance.

Class hierarchies (Inheritance and aggregation)
This is the simplest relationship between objects. Example every customer has sales. So
Customer object and sales object have an association relation between them.

In object oriented world objects have relation and hierarchies in between them. There are
basically three kind of relationship in Object Oriented world :-
1.Association
This is the simplest relationship between objects. Example every customer has sales. So
Customer object and sales object have an association relation between them

2.Aggregation
This is also called as composition model. Example in order to make a “Accounts” class it
has use other objects example “Voucher”, “Journal” and “Cash” objects. So accounts
class is aggregation of these three objects.

3.Inheritance
Hierarchy is used to define more specialized classes based on a preexisting generalized
class. Example we have VEHICLE class and we can inherit this class make more
specialized class like CAR, which will add new attributes and use some existing qualities
of the parent class. Its shows more of a parent-child relationship. This kind of hierarchy
is called inheritance.


Polymorphism
When inheritance is used to extend a generalized class to a more specialized class, it
includes behavior of the top class(Generalized class). The inheriting class often implement
a behavior that can be somewhat different than the generalized class, but the name of the
behavior can be same. It is important that a given instance of an object use the correct
behavior, and the property of polymorphism allows this to happen automatically.

1 comment:

  1. Types of Polymorphism

    Polymorphism is mainly divided into :
    1) Run Time polymorphism:
    a) Virtual function

    2) Compile Time Polymorphism :
    a) function overloading
    b) operator overloading

    ReplyDelete