שאלה בג'אווה

פיג03

New member
שאלה בג'אווה

אם אני מגדיר 2 אוביקטים:
A a1=new A() A a2=new A()​
מסוג המחלקה A. האם ההשואה (a1.equals(a2 תתן false? ושאלה נוספת: אם מוגדר data member למחלקה A : String name ל-2 האוביקטים מוגדר ערך זהה במשתנה name. מה תתן ההשואה a1.name==a2.name? וכן ההשוואה a1.name.equals(a2.name(? בתודה!!
 

zagzagzag

New member
תשובה

1. תלוי במימוש של equals כמובן. אתה יכול לדרוס את equals ולממש אותה כך שתחזיר תמיד true... אם אתה משתמש במימוש של Object תקבל false 2. השוואה עם == משווה reference, והשוואה עם equals משווה תוכן. אז עם == תקבל false, ועם equals תקבל true.
 

tkop

New member
גם...

יכול להיות שה-constructor עושה משהו רנדומי...
 
למעלה