Introduction
Object Oriented Programming में program को इस प्रकार design किया जाता है कि data को अनावश्यक या unauthorized access से बचाया जा सके। जब program बड़ा और complex होता है, तब यह आवश्यक हो जाता है कि data को सीधे हर जगह से access न किया जाए, बल्कि उसे नियंत्रित तरीके से उपयोग किया जाए।
इसी आवश्यकता को पूरा करने के लिए Data Hiding का concept उपयोग में लाया जाता है। यह OOP की एक महत्वपूर्ण विशेषता है जो program को अधिक सुरक्षित और व्यवस्थित बनाती है।
Definition of Data Hiding
Data Hiding वह प्रक्रिया है जिसमें class के data members को बाहरी access से छुपाया जाता है और उन्हें केवल class के member functions के माध्यम से ही access करने की अनुमति दी जाती है।
Data Hiding का उद्देश्य
- Data को unauthorized access से बचाना
- Data को accidental modification से सुरक्षित रखना
- Program को secure और reliable बनाना
- Controlled access प्रदान करना
Data Hiding कैसे लागू होता है?
Data Hiding को C++ में मुख्य रूप से private access specifier के माध्यम से लागू किया जाता है।
- Data members को private रखा जाता है
- Public functions के माध्यम से data को access किया जाता है
C++ में उदाहरण
#include <iostream>
using namespace std;
class Student {
private:
int marks;
public:
void setMarks(int m) {
marks = m;
}
void display() {
cout << "Marks: " << marks;
}
};
int main() {
Student s1;
// s1.marks = 90; // not allowed
s1.setMarks(90);
s1.display();
return 0;
}
Output:
Marks: 90
Working को समझना
marksको private रखा गया है- इसे सीधे access नहीं किया जा सकता
setMarks()function के माध्यम से value assign की गईdisplay()function के माध्यम से value print की गई
Data Hiding के लाभ
- Data सुरक्षित रहता है
- Program में control बना रहता है
- Code को maintain करना आसान होता है
- Error होने की संभावना कम होती है
Data Hiding और Security
Data Hiding program की security को मजबूत करता है क्योंकि यह सुनिश्चित करता है कि data को केवल authorized तरीके से ही access किया जाए। इससे system अधिक reliable बनता है।
निष्कर्ष
Data Hiding OOP का एक महत्वपूर्ण सिद्धांत है जो data को सीधे access से बचाकर केवल नियंत्रित तरीके से उपयोग करने की सुविधा प्रदान करता है। यह program को सुरक्षित, स्थिर और व्यवस्थित बनाता है।