Während ich die Java-Sprache studiere, kann ich einfach nicht verstehen, was ein Referenztyp ist und warum er beim Deklarieren einer Instanz einer Klasse angegeben werden muss. Bei der Klasse
String
scheint beispielsweise alles klar zu sein:
//Создаётся Verknüpfung типа String
String s = "Ссылка на ein Objekt, представляющий собой строку";
Aber alle Klarheit verschwindet, wenn ein ähnlicher Ansatz verwendet wird: Nehmen wir an, es gibt zwei Klassen: A (с методом a1)
und B (с методом b1)
.
class A
{
public static void a1()
{
///
}
}
class B
{
public static void b1()
{
///
}
}
Es gibt auch eine Klasse mit main
einer Methode, in der beispielsweise ein Objekt der Klasse erstellt wird AB
.
class GetTypeVar
{
public static void main(String[] args)
{
A obj1 = new A();
B obj2 = new B();
}
}
Was ist also eigentlich das Missverständnis:
- Was bedeutet in diesem Fall der Typ der zu erstellenden Variablen?
- Welchen Datentyp meinst du?
class GetTypeVar
{
public static void main(String[] args)
{
B obj1 = new A();
A obj2 = new B();
}
}
Das heißt, ein Link, der zu einer Instanz einer Klasse führt, wird auf den Klassentyp einer anderen Klasse festgelegt. Wofür? Was bringt das? Im Allgemeinen wurde die Entstehung dieses Themas von Gedanken auf der Suche nach der Wahrheit inspiriert. Ich würde mich über gute Abschiedsworte freuen ...
GO TO FULL VERSION