Wenn wir das Obige wissen, müssen wir wissen, dass es in Java die sogenannte String-Klasse gibt , die über 11 Konstruktoren und mehr als 40 Methoden verfügt , mit denen wir diese Objekte manipulieren können und die uns das Programmieren erleichtern.
Diese Klasse hilft uns aber nicht nur, die Konzepte der Objektorientierung in der Java- Programmierung besser zu verstehen.
Erstellen Sie eine Zeichenfolge
Wir können ein String-Objekt aus einem Literal erstellen oder ein String-Objekt aus einem Array von Zeichen erstellen. Im ersten Fall können wir eine Syntax wie die folgende verwenden:
String ourString = neuer String (ourLiteral);
Wie wir sehen, ist die grundlegende Syntax der Konstruktion eines gemeinsamen Objekts, bei der unsere Zeichenfolge das Objekt und unser Literal die Zeichenfolge ist, ein Beispiel, das etwas näher an dem liegt, was wir in unseren Programmen sehen können:
String message = new String ("Willkommen in Java");
Wir können auch einen String aus einem Array erstellen. Dies kann in einigen Fällen nützlich sein. Sehen wir uns an, wie wir dies erreichen können:
char [] ourArray = {'H', 'o', 'l', 'a', '', 'J', 'a', 'v', 'a'}; String message = neuer String (ourArray);
Wir können sehen, dass der einzige Unterschied die Konstruktion des Parameters war, den der Konstruktor der String-Klasse verwendet . Dies gibt uns eine klarere Vorstellung davon, wie sie die Konstruktormethoden gut überladen haben.
Unveränderliches Objekt
Wir müssen uns darüber im Klaren sein, dass ein String-Objekt unveränderlich ist, dh dass sein Inhalt nicht geändert werden kann. Sehen wir uns im folgenden Bild ein einfaches Beispiel an:
In diesem Beispiel haben wir zuerst ein String-Objekt erstellt , dem wir es als Literal “Java” zugewiesen haben. Dann weisen wir dem Objekt mit dem Namen “s” ein neues Literal “HTML” zu , aber in Wirklichkeit gibt es keine solche Zuweisung, sondern in In der zweiten Zeile erstellen wir ein neues Objekt und ändern den Verweis darauf, sodass das Objekt, das das Literal “Java” enthält, noch vorhanden ist, aber wir können nicht darauf zugreifen, da wir diesen Verweis verloren haben.
Anderer Ansatz
Aufgrund dessen, was wir im vorigen Punkt gesehen haben, hat Java eine spezielle Möglichkeit, die Instanzen der String-Klasse zu deklarieren. Dies ist bekannt, abhängig davon, ob ein spezielles Objekt verwendet wird, das für dieselben Zeichenfolgen identisch ist oder nicht Objekt “interned” , sehen wir uns das folgende Bild mit einem kleinen Beispiel an:
Wir haben 3 Objekte vom Typ String erstellt, aber nur das erste und das dritte machen wir in der internierten Form und das zweite deklarieren wir “normal”. Wenn wir den Vergleich zwischen ihnen drucken wollen, sehen wir das Der erste und der dritte werden gleich sein und das ist es, worauf wir uns bezogen haben, wenn wir über das Objekt “interniert” gesprochen haben .