ما هو الاقتران في Java ولماذا تحتاجه؟

ستساعدك هذه المقالة حول الاقتران في Java على فهم كيفية إنشاء اتصال بين فئتين من خلال كائناتهما عند الترميز في Java

كيف يمكنك إنشاء اتصال بين فئتين عند كتابة ملف برنامج جافا ؟ انه سهل. يمكنك الاستفادة من مفهوم يسمى الارتباط. تبدو مثيرة للاهتمام ، أليس كذلك؟ في هذه المقالة ، دعونا نتحقق من الرابطة في بالتفصيل.

الموضوعات التي تمت مناقشتها في هذه المقالة هي:





ما هي الجمعية؟

الاقتران في Java هو اتصال أو علاقة بين اثنين منفصلين الطبقات التي تم إعدادها من خلال شاء . تشير علاقة الارتباط إلى كيفية معرفة الكائنات لبعضها البعض وكيفية استخدام وظائف بعضها البعض. يمكن أن يكون واحد لواحد ، وواحد بأطراف ، وعديد إلى واحد ، ومتعدد بأطراف.

التحميل الزائد والتجاوز في جافا

الرابطة في جافا - Edureka



  • فمثلا،يمكن للشخص أن يكون لديه جواز سفر واحد فقط. هذا هو ' واحد لواحد ' صلة.
  • إذا تحدثنا عن الارتباط بين البنك والموظف ، يمكن أن يكون للبنك العديد من الموظفين ، لذا فهو ' واحد لكثير ' صلة.
  • وبالمثل ، توجد كل مدينة في ولاية واحدة بالضبط ، ولكن يمكن أن تحتوي الدولة على العديد من المدن ، وهي متعدد لواحد ' صلة.
  • أخيرًا ، إذا تحدثنا عن الارتباط بين المعلم والطالب ، فيمكن ربط العديد من الطلاب بمعلم واحد ويمكن أيضًا ربط طالب واحد بمعلمين متعددين ولكن يمكن إنشاء كليهما أو حذفهما بشكل مستقل. هذا ال ' الكثير للكثيرين ' صلة.

دعونا نفهم عن الاقتران بمثال.

package MyPackage import java.util. * class CityClass {private String cityName public String getCityName () {return cityName} public void setCityName (String cityName) {this.cityName = cityName}Override public String toString () {return cityName}} class الولاية {private String stateName List citys public String getStateName () {return stateName} public void setStateName (String stateName) {this.stateName = stateName} public List getCities () {return citys} public void setState (List citys) {this.citys = citys}} public class AssociationExample {public static void main (String [] args) {State = new State () state.setStateName ('California') CityClass city = new CityClass () city.setCityName ('Los Angeles') CityClass city2 = new CityClass () city2.setCityName ('San Diago') قائمة empList = new ArrayList () empList.add (city) empList.add (city2) state.setState (empList) System.out.println (state.getCities () + 'هي مدن في الولاية' + state.getStateName ())}}

انتاج:

[لوس أنجلوس ، سان دياجو] هي مدن في ولاية كاليفورنيا



كما ترى ، في هذا المثال البرنامج هناك فئتان ، وهما تنص على و مدن. ترتبط هاتان الفئتان المنفصلتان من خلالهما شاء . علاوة على ذلك ، توجد كل مدينة في دولة واحدة بالضبط ، ولكن يمكن أن تحتوي الدولة على العديد من المدن ، ومن هنا جاء مصطلح علاقة 'متعدد إلى واحد'. الأهم من ذلك ، أن الارتباط في Java له شكلين خاصين. دعونا نتحقق منها.

نوعان من الجمعيات

تكوين و تجميع هما الشكلان الخاصان للجمعيات. دعونا نتحقق منها بمساعدة مثال.

الفرق بين c # و c ++

تكوين

إنهانوع 'ينتمي إلى' منجمعية. إنه يعني ببساطة أن أحد الكائنات عبارة عن هيكل أكبر منطقيًا يحتوي على الكائن الآخر. بمعنى آخر ، إنه جزء أو عضو من الكائن الأكبر. بدلاً من ذلك ، غالبًا ما يطلق عليه اسم علاقة 'لديها' (على عكس علاقة 'is-a' ، وهي ).

إلى عن علىعلى سبيل المثال ، مبنى به غرفة ، أو بعبارة أخرى ، غرفة تنتمي إلى مبنى. تكوين هي نوع قوي من علاقة 'has-a' لأن دورات حياة الكائنات مرتبطة. هذا يعني أنه إذا قمنا بتدمير كائن المالك ، فسيتم تدمير أعضائه أيضًا. على سبيل المثال ، إذا تم تدمير المبنى ، يتم تدمير الغرفة أيضًا في مثالنا السابق. لكن لاحظ أن هذا لا يعني أن الكائن المحتوي لا يمكن أن يوجد بدون أي من أجزائه. على سبيل المثال ، إذا هدمنا جميع الغرف داخل المبنى ، فسيظل المبنى موجودًا.

تجميع

التجميع هو أيضًا علاقة 'has-a' ، ولكن ما يميزه عن التكوين هو أن دورات حياة الكائنات غير مرتبطة. ب يمكن لكل من الإدخالات البقاء على قيد الحياة بشكل فردي مما يعني أن إنهاء كيان واحد لن يؤثر على الكيان الآخر. كلاهما يمكن أن يتواجد بشكل مستقل عن بعضهما البعض. لذلك ، غالبًا ما يشار إليه باسم رابطة الأسبوع.

ما هو رمز جافا

لنأخذ مثال لاعب وفريق. يمكن للاعب الذي هو جزء من الفريق أن يوجد حتى عندما يتوقف الفريق عن الوجود.السبب الرئيسي وراء حاجتك إلى التجميع هو الحفاظ على قابلية إعادة استخدام الكود.

يقودنا هذا إلى نهاية هذه المقالة حيث تعلمنا عن Association in .

إذا وجدت هذه المقالة حول 'الاقتران في Java' ذات صلة ، فراجع ملف شركة تعليمية موثوقة عبر الإنترنت مع شبكة تضم أكثر من 250000 متعلم راضٍ منتشرة في جميع أنحاء العالم. إذا صادفت أي أسئلة ، فلا تتردد في طرح جميع أسئلتك في قسم التعليقات في 'Association in Java' وسيسعد فريقنا بالإجابة.