כיצד ליישם עומס יתר של בנאים בצורה הטובה ביותר בג'אווה?



מאמר זה יציג בפניכם עומס יתר של קונסטרוקטורים בג'אווה. ההסבר יבוא בעקבות הדגמה פרוגרמטית.

הופעת ג'אווה הכניסה את עולם התכנות בסערה והסיבה העיקרית לכך היא תכונות המספר שהביאה. במאמר זה נדון בהעמסת יתר על קונסטרוקטורים . המצביעים הבאים נדונו במאמר זה,

אז בואו נתחיל אז,





בניית עומס יתר בג'אווה

מה זה קונסטרוקטור?

קונסטרוקטור הוא גוש קוד המשמש ליצירת אובייקט של מחלקה. לכל כיתה יש בנאי, בין אם זה כיתה רגילה או כיתה מופשטת. קונסטרוקטור הוא בדיוק כמו שיטה אך ללא סוג החזרה. כאשר לא מוגדר קונסטרוקטור כלשהו עבור מחלקה, קונסטרוקטור ברירת מחדל נוצר על ידי המהדר.

כיצד לכתוב סורק ב - Java

דוגמא



מחלקה ציבורית תלמיד {// אין קונסטרוקטור פרטי שם מחרוזת פרטי גילאי פרטי מחרוזת std // getters וקובעים תצוגת חלל ציבורית () {System.out.println (this.getName () + '' + this.getAge () + ' '+ this.getStd ())} ראשי ריק סטטי ציבורי (טענות מחרוזת []) {// כדי להשתמש בשיטת התצוגה של מחלקת התלמידים, צור אובייקט של סטודנט סטודנט = סטודנט חדש () // כיוון שלא הגדרנו שום בנאי , המהדר יוצר קונסטרוקטור ברירת מחדל. כך ש- student.display ()}}

בתוכנית לעיל, בנאי ברירת המחדל נוצר על ידי המהדר כך שנוצר אובייקט. חובה שיהיה קונסטרוקטור.

זה מביא אותנו אל הבא הבא של מאמר זהבניית עומס יתר בג'אווה.

צורך בבונים אחרים

בדוגמה לעיל ניתן ליצור אובייקט סטודנט עם קונסטרוקטור ברירת מחדל בלבד. כאשר כל שאר התכונות של התלמיד אינן מאותחלות. אך יכולים להיות קונסטרוקציות מסוימות אחרות המשמשות לאתחול מצבו של אובייקט. למשל -



מחלקה ציבורית תלמיד {// תכונות שם מחרוזת int age מחרוזת std // קונסטרוקטורים סטודנטים ציבוריים (שם מחרוזת) {// קונסטרוקטור 1 this.name = name} סטודנט ציבורי (שם מחרוזת, מחרוזת std) {// קונסטרוקטור 2 this.name = שם this.std = std} סטודנט ציבורי (שם מחרוזת, מחרוזת std, גיל int) {// קונסטרוקטור 3 this.name = שם this.std = std this.age = age} תצוגת ריק ריק () {System.out .println (this.getName () + '' + this.getAge () + '' + this.getStd ())} ראשי ריק סטטי ציבורי (טענות מחרוזת []) {stu1 סטודנט = סטודנט חדש ('ABC') stu1 .display () סטודנט stu2 = סטודנט חדש ('DEF', '5-C') stu2.display () סטודנט stu3 = סטודנט חדש ('GHI', '6-C', 12) stu3.display ()}}

זה מביא אותנו אל הבא הבא של מאמר זהבניית עומס יתר בג'אווה.

התייחסות זו ()

ניתן להשתמש בהפניה זו () בתוך קונסטרוקטור פרמטריאלי כדי לקרוא לבנאי ברירת מחדל באופן מרומז. שימו לב, זו () צריכה להיות ההצהרה הראשונה בתוך קונסטרוקטור.

דוגמא

סטודנט ציבורי () {} // קונסטרוקטור 4 תלמיד ציבורי (שם מחרוזת, מחרוזת סטד, גיל) {// קונסטרוקטור 3 זה () // יקרא לבנאי ברירת המחדל. * אם זו לא ההצהרה הראשונה של הבנאי, שגיאה תתרחש * this.name = שם this.std = std this.age = גיל

הערה

  • שיחת בונה רקורסיבית אינה חוקית ב- Java
  • אם הגדרנו קונסטרוקטור כלשהו פרמטריאלי, המהדר לא ייצור קונסטרוקטור ברירת מחדל. ולהיפך אם אנו לא מגדירים בנאי כלשהו, ​​המהדר יוצר את בונה ברירת המחדל (המכונה גם בנאי ללא ארג) כברירת מחדל במהלך ההידור.
  • קריאת קונסטרוקטור חייבת להיות הצהרה ראשונה של קונסטרוקטור בג'אווה

לפיכך הגענו לסוף מאמר זה בנושא 'העמסת קונסטרוקטורים בג'אווה'. אם ברצונך ללמוד עוד, עיין ב מאת אדוריקה, חברת למידה מקוונת אמינה. קורס ההכשרה וההסמכה של Java J2EE ו- SOA של אדוריקה נועד להכשיר אותך לקונספטים מרכזיים של Java וגם עם מסגרות Java שונות כמו Hibernate & Spring.

יש לך שאלה עבורנו? אנא הזכיר זאת במדור התגובות בבלוג זה ונחזור אליך בהקדם האפשרי.