[JAVA] Was ist eine Schnittstelle?

Gute Arbeit. Ich bin neu in der Programmierung.

Schauen Sie zurück auf die Worte, die irgendwie vergangen sind Ich möchte ein paar Dinge posten, die schwer zu verstehen sind oder die mich interessieren. Ich hoffe, es ist hilfreich für diejenigen, die sich fragen, was eine "Schnittstelle" ist.

1. Was ist eine Schnittstelle?

Wenn Sie es sehr deutlich sagen

Das "Versprechen" und "Standard" sind "Diese Klasse hat eine ** Methode (≒ Funktion)!".

Lassen Sie mich Ihnen ein Beispiel geben. Angenommen, Sie haben eine Schnittstelle, die als Bedienfeld bezeichnet wird. Angenommen, dieses Bedienfeld verfügt über Methoden mit den Namen "Wiedergabe", "Stopp" und "Schnellvorlauf".

Wenn dieses controlPanel implementiert ist

In der Klasse müssen "Play", "Stop" und "Fast Forward" implementiert sein.
Es ist auch eine Einschränkung, dass es einen Fehler verursacht, wenn es nicht implementiert wird.

Unten finden Sie ein leicht verständliches Diagramm. Wenn Sie möchten, lesen Sie es bitte.

Verweise: https://www.gixo.jp/blog/5159/

2. Was genau?

Zusammenfassend die Erklärung "Ich verspreche, diese Funktion zu implementieren" Das solltest du dir denken.

3. Verwendung, bequeme Verwendung

Ist es okay für mich, dies zu lesen und es zuerst zu deklarieren? Ist es nicht schwierig, die Funktion zu erweitern? Ich dachte.

Ich habe ein neues und leicht verständliches Beispiel.

  1. Der Standard der Steckdose wurde festgelegt, und es ist grundsätzlich erforderlich, eine Steckdose herzustellen, die dem Standard für Elektrogeräte (Schnittstelle) entspricht.
  2. Ich habe einen Trockner gemacht
  3. Ich habe eine Mikrowelle gemacht
  4. Ich habe einen Kühlschrank gemacht
  5. Der Fernseher wurde erfunden

Wenn alle Steckdosen der oben genannten Haushaltsgeräte vereinheitlicht sind, kann der gleiche Stromanschluss verwendet werden. Es ist nicht erforderlich, einen Konverter zu kaufen oder die Form der Steckdose durch Bauarbeiten zu ändern. Um es anders herum auszudrücken, Entwickler von Haushaltsgeräten müssen "die Form der Steckdosen vereinheitlichen", was das Wesentliche der Benutzeroberfläche ist.

Quelle zitieren: https://teratail.com/questions/70213

In Anbetracht der Zukunft wie oben erwähnt, Deklarieren Sie "Machen Sie es mit einem solchen Standard" Ist das Verdienst nicht sehr leicht zu verstehen?

Wenn die Standards unterschiedlich sind, können wir sehr ungünstige Ergebnisse für die Benutzerfreundlichkeit erwarten ...

3. Wie unterscheidet es sich von verlängern?

Nun möchte ich auch hier auf die Erweiterung eingehen. Angenommen, Sie haben eine Personenklasse wie diese:

class Person {
     String name;
     eat(){}
```

 Erben Sie diese Personenklasse und erstellen Sie eine Programmer-Klasse.
 Folgen Sie dem Klassennamen, um eine Klasse zu erstellen, die von einer Klasse erbt
 erweitert den Klassennamen
 Einfach hinzufügen.

```java
class Programmer extends Person {
     Programming(){}
}
```

 Dies ist die Verwendung einer übergeordneten Klasse namens "Vererbung".
 Für die Verwendung der Schnittstelle ist hier
 Erweitert und verwendet die ** übergeordnete Methode **.

 Zum Beispiel, wenn Sie die in der übergeordneten Methode verwendeten Werte und Verhaltensweisen verwenden möchten
 Die Bewegung der übergeordneten Methode muss nicht erneut reproduziert werden
 Es kann durch Aufrufen (Erben) verwendet werden.

 Bitte beachten Sie, dass sich dies von der Benutzeroberfläche unterscheidet.

 Was haben Sie gedacht.
 Ich hoffe, es wird Ihnen helfen, die Schnittstelle zu verstehen.


Recommended Posts

Was ist eine Schnittstelle?
Was ist ein Initialisierer?
Was ist ein Operator?
Was ist eine Anmerkung?
Was genau ist eine API?
[Ruby] Was ist eine Instanz?
Was ist null? ]]
Was ist java
Was ist Schlüsselumhang?
Was ist Maven?
Was ist Jackson?
Was ist Selbst
Was ist Jenkins?
Was ist ArgumentMatcher?
Was ist IM-Jonglieren?
Was ist params
Was ist SLF4J?
Was ist Fassade? ??
Was ist Java <>?
Was ist Gradle?
Was ist POJO?
Was ist java
Was ist centOS?
Was ist RubyGem?
Was ist before_action?
Was ist Docker?
Was ist Byte?
Was ist Tomcat?
Was ist Docker-Compose?
Was ist ein Konstruktor?
Was ist Rubys Selbst?
Was ist harte Codierung?
Was ist ein Stream?
Was ist Rubys attr_accessor?
Was ist Java-Kapselung?
Was ist die Erlaubnis verweigert?
Was ist Instanzsteuerung?
Was ist Spring Tools 4?
Was ist Objektorientierung?
Was ist Guavas @VisibleForTesting?
Was ist ein MVC-Modell?
Was ist Java-Technologie?
Was ist Java API-Java?
Was ist @ (Instanzvariable)?
Was ist Gradles Artefakt?
Was ist JPA-Prüfung?
[Java] Was ist flatMap?
Was ist ein Servlet?
Was ist Webentwicklung?
[Java] Was ist ArrayList?
[JAVA] Was ist der Unterschied zwischen Schnittstelle und Zusammenfassung? ?? ??
Was ist eigentlich objektorientiert?
Was ist HttpSession session = request.getSession ();
Was ist Java Assertion? Zusammenfassung.