Has-a
ડેટાબેઝ ડિઝાઇનમાં, ઓબ્જેક્ટ-ઓરિએન્ટેડ પ્રોગ્રામિંગ અને ડિઝાઇનમાં, હેઝ-એ (હેઝ-એ અથવા હેઝ-એ) એ એક રચના સંબંધ છે જ્યાં એક ઓબ્જેક્ટ (જેને ઘણીવાર રચાયેલ ઓબ્જેક્ટ અથવા ભાગ/ઘટક/સભ્ય ઓબ્જેક્ટ કહેવામાં આવે છે) અન્ય ઓબ્જેક્ટ (જેને સંયુક્ત પ્રકાર કહેવામાં આવે છે) સાથે સંબંધિત છે અને માલિકીના નિયમો અનુસાર વર્તે છે. સરળ શબ્દોમાં કહીએ તો, પદાર્થમાં હેઝ-એ સંબંધને પદાર્થનું સભ્ય ક્ષેત્ર કહેવામાં આવે છે. બહુવિધ હેઝ-એ સંબંધો એક સ્વત્વબોધક પદાનુક્રમ રચવા માટે ભેગા થશે. સંબંધિત વિભાવનાઓ "હાસ-એ" એ ઇસ-એ (ઇસ-એ અથવા ઇસ-એ) સંબંધ સાથે વિપરિત છે જે વર્ગીકરણ પદાનુક્રમ (સબટાઇપિંગ) ની રચના કરે છે. કોઈ વસ્તુ અને તેના ગૌણ માટે સૌથી તાર્કિક સંબંધ હંમેશા સ્પષ્ટ રીતે-a અથવા-a નથી હોતો કે કેમ તે નિર્ણય. આવા નિર્ણયો અંગે મૂંઝવણને કારણે આ ધાતુશાસ્ત્રીય શબ્દોની રચનાની જરૂર પડી છે. હેઝ-એ સંબંધનું સારું ઉદાહરણ સી + + એસટીએલમાં કન્ટેનર છે. સંબંધોનો સારાંશ આપવા માટે, આપણી પાસે વર્ગીકરણ પદાનુક્રમને વ્યાખ્યાયિત કરતા પ્રકારો (વર્ગો) વચ્ચે હાયપરનીમ-હાયપોનીમ (સુપરટાઇપ-સબટાઇપ) સંબંધો છે, જ્યાં વારસા સંબંધ માટેઃ હાયપોનીમ (સબટાઇપ, સબક્લાસ) નો પ્રકાર-ઓફ (ઇસ-એ) તેના હાયપરનીમ (સુપરટાઇપ, સુપરક્લાસ) સાથે સંબંધ ધરાવે છે; હોલોનીમ-મેરીનોમ (સંપૂર્ણ/અસ્તિત્વ/કન્ટેનર-ભાગ/ઘટક/સભ્ય) સ્વત્વબોધક પદાનુક્રમને વ્યાખ્યાયિત કરતા પ્રકારો (વર્ગો) વચ્ચેના સંબંધો, જ્યાં એકત્રીકરણ (એટલે કે એકત્રીકરણ) માટે. માલિકી વિના) સંબંધઃ એક પવિત્ર નામ (સંપૂર્ણ) નો તેના શ્રેષ્ઠ નામ (ભાગ) સાથે, રચના માટે (એટલે કે. માલિકી સાથે) સંબંધઃ એક ઉપનામ (ઘટક) નો તેના પવિત્ર નામ (અસ્તિત્વ) સાથે આંશિક સંબંધ હોય છે, નિયંત્રણ સંબંધ માટેઃ એક ઉપનામ (સભ્ય) નો તેના પવિત્ર નામ (પાત્ર) સાથે સભ્યનો સંબંધ હોય છે; પ્રકારો (વર્ગો) અને પદાર્થો (ઉદાહરણો) વચ્ચેના ખ્યાલ-પદાર્થ (પ્રકાર-ટોકન) સંબંધો, જ્યાં ટોકન (પદાર્થ) નો તેના પ્રકાર (વર્ગ) સાથે ઉદાહરણ-સંબંધ હોય છે. ઉદાહરણો એન્ટિટી-રિલેશનશિપ મોડેલ ડેટાબેઝમાં છે-સંબંધો સામાન્ય રીતે એન્ટિટી-રિલેશનશિપ મોડેલમાં રજૂ થાય છે. જેમ તમે જમણી બાજુના આકૃતિ દ્વારા જોઈ શકો છો કે ખાતામાં બહુવિધ અક્ષરો હોઈ શકે છે. આ દર્શાવે છે કે એકાઉન્ટનો પાત્ર સાથે "હેઝ-એ" સંબંધ છે. યુ. એમ. એલ. વર્ગ આકૃતિ ઓબ્જેક્ટ-ઓરિએન્ટેડ પ્રોગ્રામિંગમાં આ સંબંધને યુનિફાઇડ મોડેલિંગ લેંગ્વેજ ક્લાસ આકૃતિ સાથે રજૂ કરી શકાય છે. આ સંબંધને રચના તરીકે પણ ઓળખવામાં આવે છે. જેમ તમે જમણી બાજુના વર્ગ આકૃતિમાંથી જોઈ શકો છો કે કાર "હેઝ-એ" કાર્બ્યુરેટર છે, અથવા કાર કાર્બ્યુરેટરથી બનેલી છે. જ્યારે હીરાનો રંગ કાળો હોય ત્યારે તે રચનાને સૂચવે છે, એટલે કે. હીરાની સૌથી નજીકની બાજુ પરની વસ્તુ અન્ય વસ્તુથી બનેલી હોય છે અથવા તેમાં હોય છે. જ્યારે સફેદ હીરા એકત્રીકરણ સૂચવે છે, જેનો અર્થ છે કે હીરાની સૌથી નજીકની વસ્તુ અન્ય વસ્તુ ધરાવે છે અથવા ધરાવે છે. સી + + વાસ્તવિક દુનિયાના મોડેલિંગમાં રચના અને એકત્રીકરણ વચ્ચે તફાવત કરવાની બીજી રીત, સમાવિષ્ટ પદાર્થના સંબંધિત જીવનકાળને ધ્યાનમાં લેવાની છે. ઉદાહરણ તરીકે, જો કાર ઓબ્જેક્ટમાં ચેસિસ ઓબ્જેક્ટ હોય, તો સંભવતઃ કારના જીવનકાળ દરમિયાન ચેસિસને બદલવામાં આવશે નહીં. તે કારની જેમ જ જીવનકાળ ધરાવશે; તેથી સંબંધ રચનાનો છે. બીજી બાજુ, જો કાર ઓબ્જેક્ટમાં ટાયર ઓબ્જેક્ટ્સનો સમૂહ હોય, તો આ ટાયર ઓબ્જેક્ટ્સ ઘસાઈ શકે છે અને ઘણી વખત બદલાઈ શકે છે. અથવા જો કાર બિનઉપયોગી બની જાય, તો કેટલાક ટાયર બચાવી શકાય છે અને બીજી કારને સોંપવામાં આવી શકે છે. કોઈપણ રીતે, ટાયર ઓબ્જેક્ટ્સ કાર ઓબ્જેક્ટ કરતાં અલગ જીવનકાળ ધરાવે છે; તેથી સંબંધ એકત્રીકરણનો છે. જો કોઈ ઉપર વર્ણવેલ સંબંધોને અમલમાં મૂકવા માટે C + + સોફ્ટવેર વર્ગ બનાવશે, તો કાર ઓબ્જેક્ટમાં ડેટા સભ્યમાં સંપૂર્ણ ચેસિસ ઓબ્જેક્ટ હશે. આ ચેસિસ ઓબ્જેક્ટ કાર વર્ગના કન્સ્ટ્રક્ટરમાં ત્વરિત કરવામાં આવશે (અથવા ડેટા સભ્યના ડેટા પ્રકાર અને કન્સ્ટ્રક્ટરમાં સોંપેલ તેના ગુણધર્મો તરીકે વ્યાખ્યાયિત કરવામાં આવશે.) અને કારણ કે તે કાર વર્ગનો સંપૂર્ણ રીતે સમાવિષ્ટ ડેટા સભ્ય હશે, જો કાર વર્ગના ઓબ્જેક્ટને કાઢી નાખવામાં આવે તો ચેસિસ ઓબ્જેક્ટ હવે અસ્તિત્વમાં રહેશે નહીં. બીજી બાજુ, કાર વર્ગના ડેટા સભ્યો કે જે ટાયર ઓબ્જેક્ટ્સ તરફ નિર્દેશ કરે છે તે મોટે ભાગે C + + પોઇન્ટર હશે. ટાયર ઓબ્જેક્ટ્સને તાત્કાલિક કાઢી શકાય છે અને બાહ્ય રીતે કાઢી શકાય છે, અથવા તો અલગ કાર ઓબ્જેક્ટના ડેટા સભ્યોને સોંપવામાં આવી શકે છે. ટાયર ઓબ્જેક્ટ્સનું સ્વતંત્ર જીવનકાળ જ્યારે કાર ઓબ્જેક્ટ કાઢી નાખવામાં આવ્યું હતું તેનાથી અલગ હશે. ઓબ્જેક્ટ કમ્પોઝિશન હેઝ-એ હોલોનીમી મેરોનીમી ઇઝ-એ હાયપરનીમી (અને સુપરટાઇપ) હાયપોનીમી (અને પેટા પ્રકાર) નોટ્સ ઓબ્જેક્ટ-ઓરિએન્ટેડ પ્રોગ્રામિંગ રિલેશનલ બીજગણિત પણ જુઓ.