Object-oriented programming is a method of implementation in which programs are organized as cooperative collections of objects, each of which represents an instance of some class, and whose classes are all members of a hierarchy of classes united via inheritance relationships.
There are three important parts to this definition:
(1) Object-oriented programming uses objects, not algorithms, as its fundamental logical building blocks
(2) each object is an instance ofsome class.
(3) classes may be related to one another via inheritance relationships.
A program may appear to be object-oriented but if any of these elements is missing, it is not an object-oriented program.
Specifically, programming without inheritance is distinctly not objectoriented; that would merely be programming with abstract data types.
By this definition, some languages are object-oriented, and some are not. Stroustrup suggests that “if the term ‘object-oriented language’ means anything, it must
mean a language that has mechanisms that support the object-oriented style…
View original post 206 more words