• Skip to main content
  • Skip to primary sidebar
  • Skip to secondary sidebar
  • Skip to footer

Computer Notes

Library
    • Computer Fundamental
    • Computer Memory
    • DBMS Tutorial
    • Operating System
    • Computer Networking
    • C Programming
    • C++ Programming
    • Java Programming
    • C# Programming
    • SQL Tutorial
    • Management Tutorial
    • Computer Graphics
    • Compiler Design
    • Style Sheet
    • JavaScript Tutorial
    • Html Tutorial
    • Wordpress Tutorial
    • Python Tutorial
    • PHP Tutorial
    • JSP Tutorial
    • AngularJS Tutorial
    • Data Structures
    • E Commerce Tutorial
    • Visual Basic
    • Structs2 Tutorial
    • Digital Electronics
    • Internet Terms
    • Servlet Tutorial
    • Software Engineering
    • Interviews Questions
    • Basic Terms
    • Troubleshooting
Menu

Header Right

Home » C++ » Oops » What is Object-Oriented?
Next →
← Prev

What is Object-Oriented?

By Dinesh Thakur

Any computer program built by combining many self-contained software structures called OBJECTS, instead of writing a single long list of instructions. Objects have both properties and behaviour, which makes them powerful tools for modelling events and processes in the real world. Each object possesses its own private data describing its properties (e.g. ‘size’, ‘colour’) and also a collection of private subprograms, called METHODS (e.g. ‘print’, ‘display’, ‘move’) for manipulating that data. The set of methods that an object understands is called its INTERFACE, and is the only means by which one object is allowed to interact with other.

Any kind of software can be designed in an object-oriented way, but the technique is particularly effective for programs that closely mimic the real world, such as SIMULATIONS, 3D design and animation, planning and control software and GRAPHICAL USER INTERFACES. By following strict disciplines, object-oriented programs may, in theory, be written in almost any programming language, but it is very much easier to write them in an OBJECT-ORIENTED PROGRAMMING LANGUAGE such as C++ that offers explicit support for the technique.

Properly designed object-oriented programs gain several advantages, owing to the self-contained nature of objects:

a) Such programs can be extended or upgraded by adding new objects or replacing old ones, without the whole program needing to be re-compiled .

b) Altering such programs is less likely to cause unexpected side-effects (I.e. BUGS) because the scope of a change is confined within a single object. A programmer may completely change the internal workings of some object (say to improve its efficiency) but, so long as its interface remains unchanged, the rest of the program should not be aware that anything has altered.

c) Designing object-oriented programs can be a more intuitive process than with traditional programming techniques. Several OBJECT-ORIENTED DESIGN methodologies have been devised to help ascertain which items are important in the real world problem domain (say banks, customers, accounts, and cheques) and then to create equivalent software objects. At risk of oversimplifying, the properties of these objects correspond to the nouns, and their methods correspond to the verbs used in an English (or French, etc) description of the process being modelled – as in ‘customer X withdraws amount Y from her account.

d) The fact that objects can have behaviours greatly simplifies many programming tasks. Consider for example a sophisticated WORD PROCESSOR that allows images or charts to be placed within a document. Internally, text, images and charts are represented by different kinds of object, but if each of these understands a method called ‘print’, then when printing out the document, the main program can simply ask each type of object to print itself without becoming concerned with the details of how this is to be accomplished. This property of objects is called POLYMORPHISM. e) Important objects within an object-oriented program may expose their interfaces to external inspection, enabling an end-user to customize the workings of the program – or to integrate it with another program to perform some special task – using a simple SCRIPTING LANGUAGE and without needing to possess the full SOURCE CODE of the program.

Object-orientation is widely employed in today’s commercial software, Microsoft’s Office 2000 suite provides a good example: all its constituent applications (Word, Excel, Outlook and PowerPoint) expose their internal object interfaces, allowing them to be ‘glued together’ to create customized applications using VISUAL BASIC FOR APPLICATIONS as the scripting language.

You’ll also like:

  1. Difference Between Procedure Oriented Language and Object Oriented Language
  2. What is OOP(object-oriented programming)?
  3. What is OOPL (Object oriented programming language)?
  4. Explain Various Type Object-Oriented Languages. Advantages and Applications of OOP
  5. What is Object-oriented Graphics?
Next →
← Prev
Like/Subscribe us for latest updates     

About Dinesh Thakur
Dinesh ThakurDinesh Thakur holds an B.C.A, MCDBA, MCSD certifications. Dinesh authors the hugely popular Computer Notes blog. Where he writes how-to guides around Computer fundamental , computer software, Computer programming, and web apps.

Dinesh Thakur is a Freelance Writer who helps different clients from all over the globe. Dinesh has written over 500+ blogs, 30+ eBooks, and 10000+ Posts for all types of clients.


For any type of query or something that you think is missing, please feel free to Contact us.


Primary Sidebar

C++ Tutorials

C++ Tutorials

  • C++ - Data Types
  • C++ - Operators Types
  • C++ - CPP Program Structure
  • C++ - Conditional Statements
  • C++ - Loop
  • C++ - do-While Loop
  • C++ - Control Statements
  • C++ - Tokens
  • C++ - Jump Statements
  • C++ - Expressions
  • C++ - Constants
  • C++ - Character Set
  • C++ - Iteration Statements
  • C++ - I/O Statements
  • C++ - String
  • C++ - Manipulators

C++ Operator

  • C++ - Input/Output Operator
  • C++ - Operator Overloading

C++ Functions

  • C++ - Functions
  • C++ - Member Functions
  • C++ - Returning Object from Function
  • C++ - Call by Value Vs Reference
  • C++ - Friend Function
  • C++ - Virtual Function
  • C++ - Inline Function
  • C++ - Static Data Members
  • C++ - Static Member Functions

C++ Array & Pointer

  • C++ - Array
  • C++ - Array of Objects
  • C++ - Arrays as Class Members
  • C++ - Vector
  • C++ - Pointer
  • C++ - 'this' Pointer

C++ Classes & Objects

  • C++ - Class
  • C++ - Program Structure With Classes
  • C++ - OOP’s
  • C++ - Objects as Function Arguments
  • C++ - Procedure Vs OOL
  • C++ - Object Vs Class
  • C++ - Creating Objects
  • C++ - Constructors
  • C++ - Copy Constructor
  • C++ - Constructor Overloading
  • C++ - Destructor
  • C++ - Polymorphism
  • C++ - Virtual Base Class
  • C++ - Encapsulation

C++ Inheritance

  • C++ - Inheritance
  • C++ - Multiple Inheritance
  • C++ - Hybrid Inheritance
  • C++ - Abstraction
  • C++ - Overloading

C++ Exception Handling

  • C++ - Exception Handling
  • C++ - Templates
  • C++ - Standard Template Library

C++ Data Structure

  • C++ - Link List

C++ Programs

  • C++ Program for Electricity Bill
  • C++ Program for Multiply Matrices
  • C++ Program for Arithmetic Operators
  • C++ Program For Matrices
  • C++ Program for Constructor
  • C++ Program Verify Number
  • C++ Program Array Of Structure
  • C++ Program to find Average Marks
  • C++ Program Add And Subtract Matrices
  • C++ Program Menu Driven
  • C++ Program To Simple Interest
  • C++ Program To Find Average
  • C++ program exit()
  • C++ Program Using Array Of Objects
  • C++ Program Private Member Function
  • C++ Program To Reverse A String
  • C++ Program to Operator Overloading

Other Links

  • C++ - PDF Version

Footer

Basic Course

  • Computer Fundamental
  • Computer Networking
  • Operating System
  • Database System
  • Computer Graphics
  • Management System
  • Software Engineering
  • Digital Electronics
  • Electronic Commerce
  • Compiler Design
  • Troubleshooting

Programming

  • Java Programming
  • Structured Query (SQL)
  • C Programming
  • C++ Programming
  • Visual Basic
  • Data Structures
  • Struts 2
  • Java Servlet
  • C# Programming
  • Basic Terms
  • Interviews

World Wide Web

  • Internet
  • Java Script
  • HTML Language
  • Cascading Style Sheet
  • Java Server Pages
  • Wordpress
  • PHP
  • Python Tutorial
  • AngularJS
  • Troubleshooting

 About Us |  Contact Us |  FAQ

Dinesh Thakur is a Technology Columinist and founder of Computer Notes.

Copyright © 2025. All Rights Reserved.

APPLY FOR ONLINE JOB IN BIGGEST CRYPTO COMPANIES
APPLY NOW