[JAVA] Unterschied zwischen Klasse und Instanz

In diesem Artikel möchten wir die Nuancen von Klassen verstehen, anstatt sie zu implementieren oder Instanzen zu erstellen.

Was ist eine Klasse?

Konstruktionszeichnung. Oder so etwas wie ein Konzept, das definiert wurde, um eine Entität zu erstellen.

Was ist eine Instanz?

Eine Entität, die basierend auf einer Konstruktionszeichnung erstellt wurde, die als Klasse bezeichnet wird. Nehmen Sie ein Auto als Beispiel Wir fertigen eine ** Instanz ** (Entität) namens Benz aus der ** Klasse ** (Konstruktionsdokument) des Autos. Jede Instanz hat unterschiedliche Eigenschaften. Selbst wenn Sie ein schwarzes Auto bauen, werden einige von ihnen Toyota-Autos sein, andere Benz-Autos, sie werden sich in Größe und Form unterscheiden und keines von ihnen wird dieselbe Instanz haben.

Code schreiben und vorstellen

Hier verwenden wir ** Java **. Wir werden ein Autodesign-Dokument erstellen, das als Autoklasse bezeichnet wird, und eine Instanz erstellen.

1. Klassendesign

Lassen Sie uns zunächst ein Designdokument für die Fahrzeugklasse erstellen. Auf der folgenden Seite finden Sie die spezifische Methode zum Erstellen des Konstruktionsdokuments. (Bitte warten, da es sich noch im Aufbau befindet)

Car.java


class Car {
    //Felddeklaration
    
    public String name = ""; //Anfangswert des Namens ・ ・ ・ 1

    public String color = ""; //Anfangsfarbwert ・ ・ ・ 2

    public int speed = 0; //Anfangswert der Geschwindigkeit ・ ・ ・ 3

    //Methodendeklaration
    public void setCar(String n, Sring c) { //・ ・ ・ 4
        this.name = n; //Legen Sie den Instanznamen fest ... 4-1
        this.color = c; //Stellen Sie die Instanzfarbe ein ... 4-2
    }

   public void setSpeed(int a) {// 5
        this.speed = a;//Anfangswert der Geschwindigkeit ・ ・ ・ 5-1
    }
}

Auch wenn Sie Java nicht kennen, können Sie es intuitiv verstehen. Ich habe ein Autodesign-Dokument (Klasse) erstellt. Die definierten Inhalte sind wie folgt

  1. Stellen Sie das Auto so ein, dass es die Eigenschaft des Namens hat
  2. Stellen Sie das Auto so ein, dass es die Farbeigenschaften aufweist
  3. Stellen Sie das Auto so ein, dass es die Geschwindigkeitscharakteristik aufweist
  4. Fügen Sie Spezifikationen hinzu, mit denen Sie den Namen und die Farbe des Fahrzeugs festlegen können
  5. Legen Sie einen Namen für die Fahrzeuginstanz fest
  6. Stellen Sie die Farbe für die Fahrzeuginstanz ein
  7. Fügen Sie Spezifikationen hinzu, mit denen die Geschwindigkeit des Fahrzeugs eingestellt werden kann
  8. Stellen Sie die Geschwindigkeit an der Fahrzeuginstanz ein

Dies ist nur ein Entwurfsdokument, es sei denn, Sie erstellen eine Instanz Ich habe gerade ein Designdokument erstellt.

2. Erstellen Sie eine Instanz

Erstellen Sie dieses Mal eine Fahrzeuginstanz basierend auf dem erstellten Konstruktionsdokument.

Wird besorgt.

In der Test.Java-Klasse, wie unten gezeigt Fügen Sie eine Methode namens makeCar hinzu und schreiben Sie sie hinein.

Test.java



    public void makeCar() { 
       Car myCar = new Car(); //・ ・ ・ 1
       myCar.setCar("Benz","Weiß"); //・ ・ ・ 2
       myCar.setSpeed(100); //· · · 3
    }
}

Die in diesem makeCar definierten Inhalte sind

  1. Erstellen Sie eine Auto-Instanz
  2. Setzen Sie den Namen Benz und die Farbe Weiß auf die erstellte Instanz.
  3. Stellen Sie die Geschwindigkeit 100 für die erstellte Instanz ein

Schließlich

Bei der objektorientierten Verarbeitung in Sprachen wie Java und Objective-C werden die Wörter ** Klasse ** und ** Instanz ** wiederholt angezeigt.

Wenn Sie es nicht wissen, haben Sie es normalerweise um sich, und es fällt Ihnen möglicherweise leichter, eine Klasse oder Instanz zu erstellen und zu ersetzen.

Ich habe unten einen Artikel geschrieben, der den Unterschied zwischen Instanzmethoden und Klassenmethoden erklärt. Ich hoffe, Sie können sich auch darauf beziehen. (Herstellung)

Wenn Sie Vorschläge haben, lassen Sie es mich bitte wissen! !!

Recommended Posts

Unterschied zwischen Klasse und Instanz
Unterschied zwischen Instanzmethode und Klassenmethode
Unterschied zwischen Instanzvariable und Klassenvariable
Unterschied zwischen Variablen und Instanzvariablen
[Java] Unterschiede zwischen Instanzvariablen und Klassenvariablen
Unterschied zwischen vh und%
Unterschied zwischen i ++ und ++ i
Der Unterschied zwischen der Ruby-Instanzmethode und der Klassenmethode ist leicht zu verstehen.
[Java] Unterschied zwischen == und gleich
Unterschied zwischen CUI und GUI
Unterschied zwischen Mockito-Core und Mockito-All
Unterschied zwischen Bundle und Bundle-Installation
Beziehung zwischen Paket und Klasse
Unterschied zwischen ArrayList und LinkedList
Unterschied zwischen render und redirect_to
Unterschied zwischen List und ArrayList
Unterschied zwischen .bashrc und .bash_profile
Unterschied zwischen StringBuilder und StringBuffer
Unterschied zwischen render und redirect_to
[Ruby] Unterschied zwischen get und post
Unterschied zwischen == Operator und Methode gleich
[Java] Unterschied zwischen Hashmap und HashTable
[Terminal] Unterschied zwischen irb und pry
JavaServlet: Unterschied zwischen executeQuery und executeUpdate
[Ruby] Unterschied zwischen is_a? Und instance_of?
Unterschied zwischen dem Operator == und der Methode eqals
Grober Unterschied zwischen RSpec und Minitest
[Rails] Unterschied zwischen find und find_by
[JAVA] Unterschied zwischen Abstract und Interface
Unterschied zwischen Thymeleaf @RestController und @Controller
Unterschied zwischen Stream Map und FlatMap
[Java] Unterschied zwischen Array und ArrayList
Unterschied zwischen primitivem Typ und Referenztyp
Unterschied zwischen string.getByte () und Hex.decodeHex (string.toCharaArray ())
[Java] Unterschied zwischen Closeable und AutoCloseable
[Java] Unterschied zwischen StringBuffer und StringBuilder
[Java] Unterschied zwischen Länge, Länge () und Größe ()
[Rails] Unterschied zwischen redirect_to und Rendern
[Android] Unterschied zwischen finish () und return;
Was ist der Unterschied zwischen einer Aktion und einer Instanzmethode?
Hinweis: Unterschied zwischen Ruby "p" und "Puts"
Unterschied zwischen final und Immutable in Java
[Hinweis] Unterschied zwischen Bundle-Installation und -Update
[Ruby] Vielleicht verstehst du das nicht wirklich? [Unterschied zwischen Klasse und Modul]
[Ruby] Beziehung zwischen Elternklasse und Kinderklasse. Beziehung zwischen Klasse und Instanz.
Unterschied zwischen pop () und peek () im Stapel
[Java] Einführungsstruktur Klassendefinition Beziehung zwischen Klasse und Instanz Methodendefinitionsformat
[Für Anfänger] Unterschied zwischen Java und Kotlin
Unterschied zwischen isEmpty und isBlank von StringUtils
Unterschied zwischen getText () und getAttribute () von Selen
Über den Unterschied zwischen irb und pry
Unterschied zwischen "|| =" und "instance_variable_defined?" Im Ruby-Memo