रचना आणि एकत्रीकरण
वर्ग आणि वस्तू एकमेकांशी संबंधित असू शकतात. वारसा "IS A" संबंधाचे वर्णन करतो. सिंह हा एक प्राणी आहे. हे नाते वारसा वापरून सहजपणे व्यक्त केले जाते,
Animal
पालक वर्ग कुठे असेल आणि
Lion
मूल असेल. पण जगातल्या प्रत्येक नात्याचं योग्य प्रकारे वर्णन केलं जात नाही. उदाहरणार्थ, कीबोर्डचा निश्चितपणे संगणकाशी काही संबंध असतो, परंतु
तो संगणक नसतो . हातांचे माणसाशी काही नाते असते, पण ते व्यक्ती नसते. ही केसेस वेगळ्या प्रकारचे नाते दर्शवतात — "IS A" नव्हे तर "HAS A". हात हे एक व्यक्ती नसून व्यक्तीचे हात असतात. कीबोर्ड हा संगणक नसतो, परंतु संगणकामध्ये कीबोर्ड असतो. "आहे"
. या संकल्पनांमधील फरक संबंधांच्या "कडकपणा" मध्ये आहे. चला एक साधे उदाहरण घेऊ: आमच्याकडे एक आहे
Car
. प्रत्येक गाडीला इंजिन असते. याव्यतिरिक्त, प्रत्येक कार प्रवासी वाहून नेऊ शकते.
Engine engine
फील्ड आणि फील्ड मधील मूलभूत फरक काय आहे
Passenger[] passengers
? जर प्रवासी
A
कारमध्ये बसला असेल, तर याचा अर्थ प्रवासी
B
आणि
C
कारमध्ये असू शकत नाहीत असा होत नाही. एका कारमध्ये अनेक प्रवासी बसू शकतात. इतकेच काय, सर्व प्रवासी गाडीतून बाहेर पडू शकतील, तरीही ते सुरळीतपणे चालू राहील.
Car
वर्ग आणि अॅरे यांच्यातील संबंध
Passenger[] passengers
कमी कठोर आहे.
त्याला एकत्रीकरण म्हणतात . या विषयावरील एक चांगला लेख येथे आहे:
वर्गांमधील संबंध (वस्तू). हे एकत्रीकरणाचे आणखी एक चांगले उदाहरण देते. समजा आपल्याकडे एक
Student
वर्ग आहे जो विद्यार्थ्याचे प्रतिनिधित्व करतो आणि एक
StudentGroup
जो विद्यार्थ्यांच्या गटाचे प्रतिनिधित्व करतो. विद्यार्थी भौतिकशास्त्र क्लब, स्टार वॉर्स विद्यार्थी फॅन क्लब किंवा कॉमेडी क्लबचा सदस्य असू शकतो.
रचना हा एक कठोर प्रकारचा संबंध आहे. रचना वापरताना, ऑब्जेक्टमध्ये दुसरी वस्तू असते, परंतु ती त्याच प्रकारच्या दुसर्या ऑब्जेक्टशी संबंधित असू शकत नाही. सर्वात सोपा उदाहरण म्हणजे कार इंजिन. जर एखाद्या कारमध्ये इंजिन असेल तर ते इंजिन दुसऱ्या कारचे असू शकत नाही. जसे तुम्ही बघू शकता, ते नाते
Car
आणि पेक्षा खूपच कडक आहे
Passengers
.
GO TO FULL VERSION