JavaRush /בלוג Java /Random-HE /מהו סוג נתוני הפניה
cerebellum
רָמָה

מהו סוג נתוני הפניה

פורסם בקבוצה
וכך, תוך כדי לימוד שפת ג'אווה, אני פשוט לא יכול להבין מהו סוג הפניה ומדוע צריך לציין אותו כאשר מכריזים על מופע של מחלקה. עם הכיתה String, למשל, הכל נראה ברור: מהו סוג נתוני הפניה - 1
//Создаётся link типа String
String s = "Ссылка на an object, представляющий собой строку";
אבל כל הבהירות נעלמת כאשר משתמשים בגישה דומה: נניח שיש שתי מחלקות: A (с методом a1)ו B (с методом b1).
class A
{
    public static void a1()
    {
        ///
    }
}

class B
{
    public static void b1()
    {
        ///
    }
}
יש גם מחלקה עם mainשיטה שבה, למשל, נוצר אובייקט של המחלקה AB.
class GetTypeVar
{
    public static void main(String[] args)
    {
        A obj1 = new A();
        B obj2 = new B();
    }
}
אז בעצם, מהי אי ההבנה:
  • מה המשמעות של סוג המשתנה שנוצר במקרה זה?
  • לאיזה סוג נתונים אתה מתכוון?
לא ברור במיוחד מתי נוצר אובייקט כך:
class GetTypeVar
{
    public static void main(String[] args)
    {
        B obj1 = new A();
        A obj2 = new B();
    }
}
כלומר, קישור המוביל למופע של מחלקה אחת מוגדר לסוג המחלקה של מחלקה אחרת. בשביל מה? מה זה נותן? באופן כללי, היצירה של נושא זה נוצרה בהשראת מחשבות בחיפוש אחר האמת. אשמח לשמוע מילות פרידה איכותיות...
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION