Introduction
Object Oriented Programming (OOP) एक ऐसा programming approach है जिसमें programs को वास्तविक दुनिया की वस्तुओं के आधार पर design किया जाता है। इस approach में हर चीज को object के रूप में देखा जाता है, जिससे program अधिक स्वाभाविक और समझने में आसान बनता है।
जब हम किसी real-world system को software में बदलते हैं, तो हमें उन entities को represent करना होता है जो उस system का हिस्सा होती हैं। इन्हीं entities को OOP में object कहा जाता है। Object की सहायता से हम data और उसके behavior को एक साथ व्यवस्थित कर सकते हैं, जिससे program अधिक organized और modular बनता है।
Definition of Object
Object एक ऐसी इकाई है जिसमें data (properties) और उस data पर कार्य करने वाले functions (methods) दोनों शामिल होते हैं।
यह Class का instance होता है और program में real-world entity को represent करता है।
Structure of Object
हर object मुख्य रूप से दो भागों से मिलकर बना होता है:
1. Data (Attributes / Properties)
यह object की विशेषताओं को दर्शाता है।
यह बताता है कि object कैसा है।
उदाहरण:
- Student का name, age, marks
- Car का color, speed, model
2. Functions (Methods / Behavior)
यह object के कार्यों को दर्शाता है।
यह बताता है कि object क्या कर सकता है।
उदाहरण:
- Student → study(), giveExam()
- Car → start(), stop()
Object और Class का संबंध
Object और Class का संबंध बहुत महत्वपूर्ण होता है।
- Class एक blueprint या template होती है
- Object उस blueprint से बना हुआ वास्तविक रूप होता है
जब हम class को use करके memory में instance बनाते हैं, तब वह object कहलाता है।
उदाहरण:
यदि “Student” एक class है, तो “Rahul” या “Amit” उस class के object होंगे।
Memory में Object
जब कोई object create किया जाता है, तब उसके लिए memory allocate होती है।
हर object का data अलग-अलग memory location पर store होता है, जिससे प्रत्येक object स्वतंत्र रूप से कार्य कर सकता है।
उदाहरण:
यदि दो objects हैं:
Student s1;
Student s2;
तो s1 और s2 दोनों के data अलग-अलग memory में store होंगे।
Object की मुख्य विशेषताएँ
1. State (स्थिति)
Object का data उसकी वर्तमान स्थिति को दर्शाता है।
जैसे:
- Student के marks
- Car की speed
2. Behavior (व्यवहार)
Object के functions यह दर्शाते हैं कि वह क्या कार्य कर सकता है।
जैसे:
- Student → study()
- Car → accelerate()
3. Identity (पहचान)
हर object की एक unique पहचान होती है, चाहे उसके data समान क्यों न हों।
यह पहचान memory location या reference के आधार पर होती है।
Real Life और Programming का संबंध
Object OOP का सबसे महत्वपूर्ण पहलू यह है कि यह programming को real-world से जोड़ता है।
| Real World | Programming |
|---|---|
| Student | Object |
| Student की जानकारी | Data |
| Student के कार्य | Functions |
इससे program को समझना और design करना आसान हो जाता है।
C++ में Object का उदाहरण
#include <iostream>
using namespace std;
class Car {
public:
string color;
int speed; void display() {
cout << "Color: " << color << endl;
cout << "Speed: " << speed;
}
};
int main() {
Car c1; // Object creation
c1.color = "Blue";
c1.speed = 80;
c1.display();
return 0;
}
Output:
Color: Blue
Speed: 80
Multiple Objects का उदाहरण
#include <iostream>
using namespace std;
class Student {
public:
string name;
void display() {
cout << name << endl;
}
};
int main() {
Student s1, s2;
s1.name = "Rahul";
s2.name = "Amit";
s1.display();
s2.display();
return 0;
}
Output:
Rahul
Amit
यह दर्शाता है कि हर object अपने data के साथ अलग-अलग काम करता है।
Object के लाभ
- Program को structured और organized बनाता है
- Real-world modeling को आसान करता है
- Code reuse को बढ़ाता है
- Data को सुरक्षित रखने में मदद करता है
निष्कर्ष
Object OOP की मूल इकाई है जो data और behavior को एक साथ जोड़ती है। यह programming को अधिक वास्तविक, व्यवस्थित और प्रभावी बनाता है। Class के माध्यम से objects का निर्माण किया जाता है और प्रत्येक object स्वतंत्र रूप से कार्य करता है।