Was ist ein „Datensatz“ in Java?

In Java wurde der „Record“ erstmals in Java SE 14 eingeführt, ist jedoch keine dauerhafte Funktion von Java. Mithilfe von Datensätzen ist es einfach, komplexen, längeren Code einfach und präzise zu schreiben. Dadurch kann der Entwickler schnell und mit minimalem Aufwand Code schreiben. Auch die Codekomplexität verringert sich. Datensätze werden nur für die Klassen verwendet, die Daten enthalten. So können Programmierer Daten effizient zwischen verschiedenen Modulen übertragen.

In diesem Artikel wird kurz auf den „Datensatz“ in Java eingegangen.

Was ist ein „Datensatz“ in Java?

Beim Schreiben eines Programms dienen viele Klassen lediglich als Datenträgerklassen, um diese Daten zwischen Modulen zu verwenden. Obwohl der Zweck dieser Klassen nur darin besteht, die Daten zu übertragen, müssen wir zum Schreiben dieser Klassen eine Menge Code schreiben, der hashCode(), Getter- und Setter-Methoden, toString() und equal() enthält, und viel Aufwand und Hierfür wird Zeit benötigt. Die Datensatzklassen ersparen uns also Zeit und Mühe, indem sie es uns ermöglichen, die Daten effizient zu speichern und zu aggregieren.

Die allgemeine Syntax einer „Record“-Klasse wird im Folgenden beschrieben:

record recordname(components to be used)
{...
}
record xyz(int id, String name)
{...
}

Schauen Sie sich nun das bereitgestellte Beispiel an, um das Konzept der „Record“-Klasse in Java zu verstehen:

public class Student {
    int reg_no;
    String name;

    public Student(int reg_no,String name)
    {
        this.reg_no = reg_no;
        this.name = name;
    }
    public void setreg_no(int reg_no)
    {
        this.reg_no = reg_no;
    }
    public int getreg_no() { return reg_no; }
    public void setname(String name)
    {
    this.name = name;
    }
    public String getname() { return name; }
 
    public String toString()
    {
        return "Student reg_no= " + reg_no
            + ", and Name= " + name ;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Student s = (Student) o;
        return getreg_no() == s.getreg_no() && getname().equals(s.getname());
    }

    @Override
    public int hashCode() {
        final int prime = 20;
        int result = 1;
        result = prime * result + reg_no;
        result = prime * result
                + ((name == null)
                        ? 0
                        : name.hashCode());

        return result;
    }
    public static void main( String[] args )
    {
        Student s1 = new Student(103,"Ali");
        Student s2 = new Student(104,"Sana");
        Student s3 = new Student(105,"Bilal");
        Student s4 = new Student(106,"Amna");
        System.out.println(s1.toString());
        System.out.println(s2.toString());
        System.out.println(s3.toString());
        System.out.println(s4.toString());
        System.out.println(s1.equals(s2));
    }
}

Im oben genannten Code

  • Wir möchten die Matrikelnummer und den Namen des Studenten anzeigen, deshalb haben wir ein „Student“ Klasse.
  • Innerhalb der „Student„Klasse haben wir zwei Variablen“Name“ Und „reg_nr“.
  • Anschließend erstellen wir die Getter- und Setter-Methoden für diese beiden Variablen.
  • Dann haben wir „Hash-Code()“ Und „gleicht”Methoden zum Vergleich verschiedener zugewiesener Zeichenfolgen.
  • Abschließend im „hauptsächlich()„Methode haben wir Objekte von „Student“ erstellt als „s1“, „s2“, „s3“ Und „s4” und legen Sie die Werte von „name“ und „reg_no“ fest und drucken Sie diese Werte aus.
  • Wir verwenden auch die Gleichheitsmethode, um die Werte von „s1“ mit „s2“ zu vergleichen.

Hier ist die Ausgabe:

Dies ist ein langer und komplexer Code, der nur dazu dient, einige Daten zu speichern, sodass wir statt all dieser Methoden einfach nur eine Datensatzklasse verwenden und so die Komplexität des oben beschriebenen Codes reduzieren können. Die Datensatzklasse für diesen Code lautet:

record student(int reg_no, String name){...}

Diese Klasse enthält nur die Daten des Schülers und nicht all diese Methoden. Sehen wir uns nun das gesamte Programm mit Ausgabe an:

class Student {
    record student(int reg_no, String name){}
    public static void main( String[] args )
    {
        student s1 = new student(103,"Ali");
        student s2 = new student(104,"Sana");
        student s3 = new student(105,"Bilal");
        student s4 = new student(106,"Amna");
        System.out.println(s1.toString());
        System.out.println(s2.toString());
        System.out.println(s3.toString());
        System.out.println(s4.toString());
        System.out.println(s1.equals(s2));
        System.out.println(s1.name());
    }
}

Ausgabe

Hier haben wir gesehen, wie eine Datensatzklasse den Code so einfach und effizient machen kann.

Abschluss

In Java wird die Klasse „record“ verwendet, wenn Benutzer Codeträgerklassen in ihrem Code haben. Es vereinfacht die Implementierung, indem die Daten zwischen verschiedenen Modulen gespeichert werden. Darüber hinaus kann der Benutzer alle Getter-, Setter-Methoden, Konstruktoren, toString()-, equal()- und hashCode()-Methoden überspringen und nur die Datensatzklasse implementieren und auf alle diese Methoden zugreifen, ohne dafür Code schreiben zu müssen. In diesem Artikel haben wir die Klasse „record“ in Java demonstriert.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen