Schaltflächenklasse:
%Vor%Wo ich es erkläre:
%Vor%Wie setzt super (Titel) den String-Titel auf den Titel der Schaltfläche? Wie macht es dasselbe wie die Methode .setText () für reguläre JButtons?
Mit anderen Worten, wie hat das Aufrufen von super () dasselbe getan wie .setText () Wie kann super () den Titel ändern? ist .setText () die einzige Methode in der JButton-Klasse, die einen String als Parameter akzeptiert?
JButton hat einen Konstruktor, der so aussehen könnte (vereinfacht):
%Vor%SubmitBUtton hat einen Konstruktor:
%Vor%Der SubmitButton-Konstruktor ruft den Superklassen (JButton) -Konstruktor auf, der wiederum setText aufruft. Jetzt intern könnte JButton anders funktionieren, aber der Effekt ist der gleiche.
Der allgemeine Punkt ist, dass super (...) den Superklassenkonstruktor aufruft.
JButton ist eine zentrale Java Swing-Klasse, die mehrere Konstruktoren unterstützt. Einer dieser Konstruktoren ermöglicht Ihnen, den Text für die Schaltflächenbeschriftung festzulegen.
Beim Hinzufügen von super (title) wurde tatsächlich kein Aufruf ausgeführt - der Konstruktor des übergeordneten Elements wäre trotzdem aufgerufen worden, aber es hat geholfen, auszuwählen, welcher Konstruktor aufgerufen wird.
Mit der Funktion setText () können Sie den Text nach dem Erstellen der Schaltfläche ändern (normalerweise), bevor er angezeigt wird.
Wenn der SubmitButton mit dem Konstruktor SubmitButton (String title) initialisiert wird, rufen Sie den Konstruktor parent / super class mit dem Titel auf. Wenn Sie nicht den Super (Titel) angeben, fügt der Java-Compiler automatisch den Code ein, um den Standardkonstruktor der Superklasse aufzurufen. Dann würde der Titel beim Erstellen des SubmitButton nicht gesetzt werden.
Auch die Oberklasse (JButton) könnte den .setText (string) innerhalb ihres Konstruktors verwenden und deshalb führt sie die gleiche Funktion aus (muss die tatsächliche Java-Quelle betrachten).
In allen Fällen in Java ruft dieser Aufruf von super()
den Haupttarif der Elternklasse auf. Wie bei allen Funktionen entspricht das Java-Muster beim Aufruf eines ctor den Namen und Parametertypen. JButton
deklariert einen ctor mit einem string-Argument. Wenn Sie also super(title)
aufrufen, rufen Sie den Konstruktor für die direkte Superklasse (JButton) auf, der ein einzelnes string-Argument verwendet.
(Kopieren Sie die gesamte URL, aus irgendeinem Grund ist der String-Teil nicht verknüpft)
Es ruft den in der oben verlinkten JButton-Klasse definierten Konstruktor auf, der den Text der Schaltfläche auf den übergebenen String setzt. super () ist ein Aufruf eines Superklassenkonstruktors.