JavaRush /Blog Java /Random-PL /Co to jest referencyjny typ danych
cerebellum
Poziom 7

Co to jest referencyjny typ danych

Opublikowano w grupie Random-PL
I tak, studiując język Java, po prostu nie mogę zrozumieć, czym jest typ referencyjny i dlaczego należy go określić, deklarując instancję klasy. Na przykład w przypadku klasy Stringwszystko wydaje się jasne: Co to jest referencyjny typ danych - 1
//Создаётся połączyć типа String
String s = "Ссылка на obiekt, представляющий собой строку";
Ale cała jasność znika, gdy zastosuje się podobne podejście: powiedzmy, że są dwie klasy: A (с методом a1)i B (с методом b1).
class A
{
    public static void a1()
    {
        ///
    }
}

class B
{
    public static void b1()
    {
        ///
    }
}
Istnieje również klasa posiadająca mainmetodę, w której np. tworzony jest obiekt klasy AB.
class GetTypeVar
{
    public static void main(String[] args)
    {
        A obj1 = new A();
        B obj2 = new B();
    }
}
A właściwie na czym polega nieporozumienie:
  • Co w tym przypadku oznacza typ tworzonej zmiennej?
  • Jaki typ danych masz na myśli?
Szczególnie nie jest jasne, kiedy obiekt jest tworzony w ten sposób:
class GetTypeVar
{
    public static void main(String[] args)
    {
        B obj1 = new A();
        A obj2 = new B();
    }
}
Oznacza to, że łącze prowadzące do instancji jednej klasy jest ustawione na typ klasy innej. Po co? Co to daje? Generalnie powstanie tego tematu było inspirowane myślami o poszukiwaniu prawdy. Z przyjemnością usłyszę wartościowe słowa pożegnalne...
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION