Wann und wo das Kotlin Companion-Objekt zu verwenden ist
-
Java
statische
Methoden -
Kotlin
Begleiter
-Objekt - Wann sollten wir ein Kotlin-Begleitobjekt verwenden?
In jeder objektorientierten Programmiersprache wie Kotlin, Java oder C# müssen wir Objekte einer Klasse erstellen, um auf ihre Mitglieder zuzugreifen. In Kotlin sieht das ungefähr so aus:
class className{
fun funName() = // code will come here
}
fun main(){
val obj = className()
obj.funName() // calling the function using the class's object
}
Es gibt jedoch eine Möglichkeit, auf die Methode einer Klasse zuzugreifen, ohne ein Objekt zu erstellen. Und hier kommen Javas statische
und Kotlins begleitende
Objekte ins Spiel.
In diesem Artikel erfahren wir mehr über das Objekt Begleiter
und wie es in Kotlin verwendet wird. Aber bevor wir darauf eingehen, schauen wir uns ein Beispiel für die statischen
Methoden von Java an.
Java statische
Methoden
Java ermöglicht es, einen objektorientierten Programmieransatz zu verfolgen, ohne ein Objekt zu erstellen. Dies geschieht durch die Verwendung von statischen
Objekten oder Instanzen.
Das Schlüsselwort static
ermöglicht die Erstellung von statischen Variablen oder Methoden innerhalb einer Klasse. Diese Variablen oder Methoden bleiben konstant und können nach der Initialisierung nicht mehr geändert werden.
Die bedeutendste Verwendung des Schlüsselworts static
in Java ist die Speicherverwaltung. Wir können auf statische Variablen und Methoden zugreifen, ohne ein Objekt zu erstellen, was Speicher spart.
Auf solche Methoden können wir mit Hilfe von Klassennamen zugreifen.
Das folgende Java-Programm demonstriert dasselbe. Die cubeNumber()
in diesem Programm ist eine statische Methode.
Es nimmt einen ganzzahligen Parameter und gibt seinen Würfel zurück.
import java.util.*;
public class Example {
public static void main(String[] args) {
int res = Example.cubeNumber(3);
System.out.println("Cube of 3 is: " + res);
}
public static int cubeNumber(int i) {
return i * i * i;
}
}
Wie wir sehen, ist die cubeNumber()
die statische Methode im obigen Beispiel. Daher könnten wir es mit dem Klassennamen aufrufen.
Kotlin Begleiter
-Objekt
Java hat statische
Methoden, aber es gibt kein statisches
in Kotlin. Es gibt immer noch eine Möglichkeit, solche Variablen zu erstellen, aber der Ansatz ist ein anderer.
In Kotlin verwenden wir das Schlüsselwort companion
-Objekt, um solche Methoden zu erstellen.
Das Schlüsselwort companion
funktioniert genauso wie das Schlüsselwort static
in Java. Es ermöglicht den Zugriff auf Methoden, die mit dem Schlüsselwort companion
ohne Objekt erstellt wurden.
Hier ist ein Beispiel, um die Verwendung von companion
-Objekten in Kotlin zu demonstrieren. In diesem Beispiel erstellen wir eine Klasse Employee
.
Wir werden dann eine Funktion erstellen, um den Namen des Mitarbeiters mit dem Schlüsselwort companion
auszugeben und ohne das Objekt der Klasse darauf zuzugreifen.
class Employee {
companion object {
fun printName() = println("Hi, my name is David.")
}
}
fun main(args: Array<String>) {
Employee.printName()
}
Wir können den Namen der Funktion auch weglassen. In diesem Fall können wir den Namen Companion
verwenden.
Wann sollten wir ein Kotlin-Begleitobjekt verwenden?
Das beste Szenario für die Verwendung eines Kotlin-Begleitobjekts ist, wenn es den Zustand des Objekts der Klasse nicht beeinträchtigt. Das heißt, wenn Sie reine Funktionen oder Endwerte verwenden, auf die von außerhalb der Klasse selbst zugegriffen werden muss, können Sie das Kotlin-Objekt Begleiter
verwenden.
Wenn das Objekt jedoch den Zustand des Objekts der Klasse stört, wird davon abgeraten, das Objekt companion
zu verwenden. Denn seine Verwendung kann zu zahlreichen Fehlern führen.
Kailash Vaviya is a freelance writer who started writing in 2019 and has never stopped since then as he fell in love with it. He has a soft corner for technology and likes to read, learn, and write about it. His content is focused on providing information to help build a brand presence and gain engagement.
LinkedIn