Basic Concept of Object Oriented Database:
There is a certain set of basic
concepts, supported by each object-oriented database system. These basic
concepts are objects and identity, encapsulation, classes and instantiation,
inheritance and overloading, overriding and late binding.
Objects and Identity
In an object-oriented database,
each real-world entity is represented by an object. This object has a state and
a behavior. The combination of the current values of an object's attributes defines the object's state. A set of methods,
acting on an object's state, define the object's behavior.
Encapsulation
Encapsulation is a basic concept
for all object-oriented technologies. It was created for making a clear
distinction between the specification and the implementation of an operation
and in this way for enabling modularity.
Classes and Instantiation
When looking at the concept of classes in object-oriented
databases, you have to distinguish the terms class and type. A type is used to
describe a set of objects that share the same behavior. In this sense, an
object's type depends on which operations can be invoked on the object. A class
is a set of objects that have the exact
same internal structure.
Inheritance
Inheritance makes it possible to
define a class as a subclass of an already existing one (superclass). The
subclass inherits all attributes and methods from the superclass and can
additionally define its own attributes and methods. This concept is an
important mechanism for supporting reusability.
Overloading, Overriding,
and Late Binding
It is often useful to use the same
name for different, but similar, methods. Imagine
you want to display an item on your screen. Different items may need different
viewers. Maybe you wish to be able to view all items with the method
"view".