JavaRush /Java блог /Random UA /Що таке посилання тип даних
cerebellum
7 рівень

Що таке посилання тип даних

Стаття з групи Random UA
І так, в ході вивчення мови Java ніяк не можу зрозуміти що таке тип посилання і для чого його потрібно вказувати при оголошенні екземпляра класу. З класом String, наприклад, все начебто зрозуміло: Що таке тип посилання - 1
//Создаётся посилання типа String
String s = "Ссылка на об'єкт, представляющий собой строку";
Але вся ясність зникає, коли використовується такий підхід: Припустимо, є два класи: 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();
    }
}
Тобто на посиланні, що веде на екземпляр одного класу встановлюється тип класу іншого. Навіщо? Що це дає? Втім, створення цього топіка було навіяно ідеями в пошуках істини. Радий почути якісне напуття...
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ