
07-12-2009, 04:19
|
 |
|
|
חבר מתאריך: 21.12.04
הודעות: 30,020
|
|
אתה לא באמת יכול לבדוק את האובייקטים בג'אווה - אתה יכול לבדוק את הרפרנסים.
אם אתה בונה רפרנס מסוג מסויים, אתה יכול לבדוק האם הוא מצביע ל null או לאובייקט, ע"י שימוש ב ==
דוגמא:
קוד PHP:
class Bla { ... }
Bla bla = new Bla(); if (bla != null) { ... }
זה אמור להכנס לתוך תנאי ה if כיוון ש bla אכן מצביע על אובייקט מסויים, ולא מצביע על null.
לא הרצתי וקימפלתי - אני מקווה שאני לא מתעה אותך.
הפורנציה equals באה להשוות תוכן, ולא הצבעה:
קוד PHP:
String str1 = new String("hello world"); String str2 = "hello world"; String str3 = str1;
התוכן של str1 ו- str2 זהה, ולכן שימוש ב equals יתן לך true, אבל הם לא שווים זה לזה. כל אחד מצביע על אובייקט אחר, ולכן שימוש ב == יתן לך false.
לעומת זאת, גם str3 וגם str1 מצביעים על אותו אובייקט ולכן שימוש ב == וגם ב equals יתן לך true.
שוב - אני מקווה שאני לא טועה, אני חדש בג'אווה אבל כך הבנתי את העסק 
|