נושא
public
final
class
Topic
extends Object
java.lang.Object | |
↳ | android.adservices.topics.Topic |
ייצוג התוצאה של הנושא מ-getTopics API.
סיכום
בנאים ציבוריים | |
---|---|
Topic(long mTaxonomyVersion, long mModelVersion, int mTopicId)
יצירת אובייקט שמייצג את התוצאה מ-getTopics API. |
שיטות ציבוריות | |
---|---|
boolean
|
equals(Object object)
מציין אם אובייקט אחר הוא "שווה ל" הזה. |
long
|
getModelVersion()
מוצאים את גרסת ה-Model. |
long
|
getTaxonomyVersion()
מוצאים את הטקסונומיה של הגרסה. |
int
|
getTopicId()
מוצאים את מזהה הנושא. |
int
|
hashCode()
מחזירה ערך גיבוב (hash) של האובייקט. |
String
|
toString()
מחזירה ייצוג במחרוזת של האובייקט. |
שיטות שעברו בירושה | |
---|---|
בנאים ציבוריים
נושא
public Topic (long mTaxonomyVersion, long mModelVersion, int mTopicId)
יצירת אובייקט שמייצג את התוצאה מ-getTopics API.
פרמטרים | |
---|---|
mTaxonomyVersion |
long : מספר ארוך שמייצג את גרסת הטקסונומיה. |
mModelVersion |
long : ארוך שמייצג את גרסת המודל. |
mTopicId |
int : מספר שלם שמייצג את המזהה הייחודי של נושא מסוים. |
שיטות ציבוריות
שווה ל-
public boolean equals (Object object)
מציין אם אובייקט אחר הוא "שווה ל" הזה.
השיטה equals
מטמיעים יחס שקילות
בהפניות לאובייקטים שאינם אפס:
- הגדרה רפלקטיבית: לכל ערך הפניה שהוא לא null
x
,x.equals(x)
אמור לחזורtrue
- הערך הוא סימטרי: לכל ערכי הפניה שאינם אפס
x
וגםy
,x.equals(y)
צריך להחזיר את הערךtrue
אם ורק אם הפונקציהy.equals(x)
מחזירהtrue
. - הוא מעבר: לכל ערכי הפניה שאינם null
x
,y
וגםz
, אםx.equals(y)
מחזירהtrue
וy.equals(z)
מחזירהtrue
, ואזx.equals(z)
אמור להחזירtrue
. - הוא עקבי: לכל ערכי הפניה שאינם null
x
ו-y
, מספר הפעלות שלx.equals(y)
מחזירtrue
באופן עקבי או להחזיר בעקביותfalse
, בתנאי שלא מידע שמשמש בהשוואות שלequals
אובייקטים הם משתנים. - לכל ערך הפניה שהוא לא אפס,
x
הפונקציהx.equals(null)
צריכה להחזיר את הערךfalse
.
ה-method equals
למחלקה Object
מיושמת
את יחס השקילות האפשריים ביותר על אובייקטים;
כלומר, לכל ערכי הפניה שאינם אפסיים x
וגם
y
, השיטה הזו מחזירה true
אם ורק
אם x
ו-y
מתייחסים לאותו אובייקט
(x == y
יש את הערך true
).
לתשומת ליבכם: בדרך כלל יש צורך בשינוי מברירת המחדל של hashCode
בכל פעם שמחליפים את השיטה, כדי לשמור על
חוזה כללי ל-method hashCode
, שקובעת
שאובייקטים שווים חייבים להיות בעלי קודי גיבוב (hash) שווים.
פרמטרים | |
---|---|
object |
Object : אובייקט ההפניה שאליו תשוו. |
החזרות | |
---|---|
boolean |
true אם האובייקט הזה זהה ל-obj
ארגומנט; אחרת, false . |
גרסת getModelVersion
public long getModelVersion ()
מוצאים את גרסת ה-Model.
החזרות | |
---|---|
long |
getTaxonomyVersion
public long getTaxonomyVersion ()
מוצאים את הטקסונומיה של הגרסה.
החזרות | |
---|---|
long |
getTopicId
public int getTopicId ()
מוצאים את מזהה הנושא.
החזרות | |
---|---|
int |
קוד גיבוב (hashCode)
public int hashCode ()
מחזירה ערך גיבוב (hash) של האובייקט. השיטה הזאת
נתמך לטובת טבלאות גיבוב (hash), כמו אלה שמסופקות על ידי
HashMap
החוזה הכללי של hashCode
הוא:
- בכל פעם שהוא מופעל על אותו אובייקט יותר מפעם אחת במהלך
הרצה של אפליקציה ב-Java, ה-method
hashCode
צריך להחזיר בעקביות את אותו מספר שלם, כל עוד אין מידע שנעשה בו שימוש בהשוואות שלequals
באובייקט. המספר השלם הזה לא צריך להיות עקבי מהפעלה אחת של לביצוע אחר של אותה האפליקציה. - אם שני אובייקטים שווים לפי
equals(Object)
ואז קריאה ל-methodhashCode
בכל אחד שני האובייקטים חייבים להפיק את אותה תוצאה של מספר שלם. - לא נדרש שאם שני אובייקטים אינם שווים
בהתאם ל
equals(java.lang.Object)
ואז קריאה ל-methodhashCode
בכל אחד שני אובייקטים חייבים להניב תוצאות נפרדות של מספרים שלמים. אבל, מתכנת צריך להיות מודע לכך שהפקת תוצאות של מספרים שלמים נפרדים לאובייקטים לא שווים, עשויה לשפר את הביצועים של טבלאות גיבוב.
עד כמה שהדבר מעשי באופן סביר, שיטת ה-hashCode מוגדרת
לפי מחלקה Object
מחזיר מספרים שלמים ייחודיים
של אובייקטים ייחודיים. (ייתכן שה-hashCode לא הוטמע
בתור פונקציה כלשהי של כתובת הזיכרון של אובייקט בשלב כלשהו
בזמן).
החזרות | |
---|---|
int |
ערך קוד גיבוב (hash) של האובייקט הזה. |
toString (מחרוזת)
public String toString ()
מחזירה ייצוג במחרוזת של האובייקט. באופן כללי,
ה-method toString
מחזירה מחרוזת
'ייצוג טקסטואלי' של האובייקט הזה. התוצאה צריכה
להיות ייצוג תמציתי ואינפורמטיבי, שקל לבצע
אדם לקרוא.
מומלץ שכל מחלקות המשנה יבטלו את השיטה הזו.
השיטה toString
לכיתה Object
מחזירה מחרוזת שמורכבת מהשם של המחלקה שבה
האובייקט הוא מופע, התו '@
' עם הסימן @,
את הייצוג ההקסדצימלי הלא חתום של קוד הגיבוב של
לאובייקט. במילים אחרות, השיטה הזו מחזירה מחרוזת השווה
ערך של:
getClass().getName() + '@' + Integer.toHexString(hashCode())
החזרות | |
---|---|
String |
ייצוג במחרוזת של האובייקט. |