כאשר בשפת התכנות ג׳אווה יוצרים משתנה אשר מחזיק באובייקט המשתנה לא מחזיק באובייקט עצמו. המשתנה מחזיק ב-reference של האובייקט. מסיבה זו, כאשר נבצע השוואה בין שני משתנים אשר מחזיקים ב-references של שני אובייקטים באמצעות האופרטור == ההשוואה שתתבצע בפועל תהיה השוואה של ה-references ולא של האובייקטים עצמם.
השוואה בין אובייקטים באמצעות המתודה equals
כיוון שלא ניתן להשתמש באופרטור == כדי להשוות בין שני אובייקטים (שימוש באופרטור == משמעותו תהיה השוואה של ה-references של שני האובייקטים) הדרך שבה ניתן להשוות בין שני האובייקטים היא באמצעות הפונקציה equals. זוהי פונקציה שהוגדרה במחלקה Object ולכן ניתן להפעיל אותה על כל אובייקט. כמו כן, בכל מחלקה שאנו נגדיר נוכל לעשות לה overriding כדי שההשוואה בפועל תהיה באופן שאותו אנו נכתיב. במחלקות רבות שכבר הוגדרו על ידי אחרים, לרבות המחלקות שכבר קיימות בסביבת ההרצה של ג׳אווה, כבר דאגו להגדיר מחדש את equals. הווידאו שלהלן מסביר נושא זה בפירוט. הווידאו הופק כחלק מהקורס תכנות בג׳אווה אשר זמין ללימוד ג׳אווה באתר life michael professional.
לימוד ג׳אווה בזמן ובקצב שמתאימים לכם
באתר של life michael professional ניתן למצוא קורסים ללימוד מגוון גדול של שפות תכנות. קורסים אלה פותחו בעברית והם מיועדים ללימוד אסינכרוני. ניתן להתחיל בכל עת וניתן ללמוד בזמן ובקצב שמתאימים לכם.
קורסים נוספים שכבר כעת ניתן למצוא ב-life michael professional כוללים קורס ללימוד Python, קורס ללימוד JavaScript וקורס ללימוד TypeScript.