Warum verwenden wir die Schnittstelle in Java?

9 Antworten


  • Gehen Sie dieses Programm einmal durch ...
    Ich werde die Verwendung von Interface am Ende erklären ...

    Interface Interf
    {
    void m1();
    Leere m2();
    }
    Klasse InterfaceTest implementiert Interf
    {
    public void m1()
    {
    System.out.println("implementation m1");
    }
    public void m2()
    {
    System.out.println("Implementierung m2");
    }
    öffentliche Leere m3 ()
    {
    System.out.print("SIE WUNDERN SIE SICH ! Ich wusste warum????? Ich bin nicht von der Interface-Instanz instatiiert I okkkk Ich bin eine Instanz von InterfaceTest ..... Gut gemacht, Sie verstehen jetzt das Interface-Konzept");
    }
    public static void main(String arg[])
    {
    Interf I=new InterfaceTest();
    I.m1();
    I.m2();
    Schnittstellentest b = (Schnittstellentest)I;
    b.m3();
    }
    }

    Vergiss jetzt den INTERFACE-Teil in meinem Programm und folge mir...es ist ganz einfach..... Komm schon scroll...
    Wenn du die Methoden m1 und m2 in einigen anderen Klassen wiederverwenden willst, was würdest du tun ????
    Weg 1: Ich kann ein Objekt für die Klasse InterfaceTest in meiner Klasse instanziieren.
    NACHTEIL : Wenn Sie ein anderes Objekt instanziieren, bedeutet dies implizit, dass Sie eine Kopie der InterfaceTest-Klasse erstellen. Es fällt also nicht in die Kategorie WIEDERVERWENDUNG.

    Weg 2: Ich kann InterfaceTest in meiner Klasse erweitern ...gut gemacht gut, aber
    NACHTEIL: Wenn interfaceTest viele andere Methoden als m1 und m2 enthält, müssen Sie auch für diese Methoden Speicher zuweisen (waste na) in deiner Klasse

    Weg 3: USING INTERFACE >>>>>>
        m1 und m2 Methoden innerhalb eines Interfaces machen (siehe obiges Programm jetzt noch einmal komplett),

    damit du von einer anderen Klasse wie Extend darauf zugreifen kannst , aber einen kleinen Unterschied du zeigen nicht die unerwünschte Methode m3 ..... viel Glück ...

    Stellen Sie Fragen, wenn Sie Erläuterungen benötigen ...
  • Wenn wir eine Schnittstelle implementieren, müssen wir alle Methoden in der implementierenden konkreten Klasse implementieren. Wir sind uns also sicher, dass alle Funktionen, die der Aufrufer benötigt, in der Klasse codiert werden und wir keine Funktionalität verpassen. Dies ist besonders dann von Vorteil, wenn wir eine Klasse A haben, die eine Funktion der Klasse B aufruft. Wenn wir nach einiger Zeit Klasse B durch C ersetzen möchten, können wir ohne Bedenken zu Klasse C wechseln, solange wir wissen, dass Klasse C dies auch implementiert gleiche Schnittstelle wie die Klasse B

    Sandeep Hooda.
  • Schnittstellen ist eines der am häufigsten verwendeten Konzepte in Java. Lassen Sie mich dies an einem Beispiel erklären: Angenommen, Sie haben ein GPS-Gerät für ein Auto entwickelt, das in die Karte schaut und das Auto automatisch in die auf der Karte angezeigte Richtung dreht. Dieses GPS-Gerät kann in vielen Autos wie Benz, Fiat usw. verwendet werden. Für jedes Auto kann der Mechanismus zum Drehen nach links oder rechts je nach Implementierung des Autosystems unterschiedlich sein. Diese Funktionen sollten also vom Autohersteller geschrieben werden und diese Methoden verwenden werden in eine Schnittstelle eingefügt, die vom Autohersteller gemäß seiner Autoimplementierung implementiert wird. Schnittstellen enthalten nur eine Reihe von Funktionsdeklarationen, die vom Autohersteller definiert werden müssen (in diesem Fall).
  • In der Programmiersprache Java ähnelt eine Schnittstelle einer Klasse, die nur Konstanten, Methodensignaturen und verschachtelte Typen enthalten kann. Es gibt keine Methodenkörper. Es gibt keine Objekte. Schnittstellen können nicht instanziiert werden. Sie können nur durch Klassen implementiert oder durch andere Interfaces erweitert werden.
  • Weil die Schnittstelle nur die Struktur der Methode bereitstellt, ohne irgendeine Art der Implementierung der Methode zu zeigen.
  • Schnittstellen werden verwendet, um das Konzept des Late-Binding zu implementieren.
    Late Binding ist hier der Prozess der dynamischen Übergabe von Funktionalität an eine Funktion.
    Tatsächlich werden Schnittstellen nicht verwendet, um das Konzept der Mehrfachvererbung zu implementieren.
    Vererbung stellt vererben Eigenschaften aus der Superklasse in Klassen , in denen wie in Schnittstellen , wenn Sie eine Schnittstelle erweitern die Schnittstelle nur Erklärungen bekommen kann dann die Umsetzung Klasse Definitionen zu schaffen , so dass wir keine Mehrfachvererbung implementieren können
    nur die Menschen das Gefühl , dass Schnittstellen unterstützt Mehrfachvererbung , aber es ist nicht in Ordnung.
  • Wenn die Anforderung so ist, dass sich etwas in Ihrem Design häufig ändert, sollten Sie sich für Schnittstellen anstelle von Klassen entscheiden.

    Wenn Sie zB Ihr Projekt unterstützen möchten, sollen verschiedene Datenbanken unterstützt werden. Damit der Kunde seine Datenbank in Zukunft ändern kann, verwenden wir Schnittstellen, die Eigenschaftsprozeduren in der Klassendatei enthalten, ohne Objekte zu ändern.
  • Die Schnittstelle bietet Flexibilität und neigt dazu, Probleme mit herstellerspezifischen Details zu lösen, indem sie ihnen die zu implementierenden Funktionen gibt.
  • Es wird hauptsächlich verwendet, wenn Sie Polymorphismus verwenden ... wenn Sie einige Objekte mit IS A-Beziehungen umwandeln müssen ...

Schreibe deine Antwort

Ihre Antwort erscheint nach der Moderation appear