Einführung
Verwenden Sie Erweiterungsmethoden, um Methoden zu einem vorhandenen Typ „hinzufügen“, ohne einen neuen abgeleiteten Typ zu erstellen, neu zu kompilieren oder den ursprünglichen Typ auf andere Weise zu ändern. Obwohl eine Erweiterungsmethode eine Sonderform einer statischen Methode ist, kann sie wie eine Instanzmethode eines Erweiterungstyps aufgerufen werden. Bei in C# und Visual Basic geschriebenem Clientcode gibt es keinen wesentlichen Unterschied zwischen dem Aufruf einer Erweiterungsmethode und dem Aufruf der tatsächlich im Typ definierten Methode.
Sprachen, die Erweiterungsmethoden unterstützen
Tatsächlich unterstützen viele Programmiersprachen Erweiterungsmethoden wie C#, Visual Basic, Kotlin usw., aber unsere Java-Sprache unterstützt sie seit langem nicht mehr Für Java-Funktionen verspricht JDK16 die Bereitstellung dynamischer Bibliotheksaufruflösungen. Wenn wir jedoch als Hauptbenutzer von JDK8 auch Erweiterungsmethoden verwenden möchten, müssen wir einen anderen Weg finden.
C#
/// 扩展方法 public static class ExpandMethod { /// 两个数相加 public static int Sum(this int num,int num2) { return num + num2; } } public class Program { static void Main(string[] args) { /// 调用位置 Console.WriteLine(3.Sum(2)); } }
Visual Basic
Imports System.Runtime.CompilerServices Module Module3 Sub Main() Dim ex As New ExampleClass ' 调用位置 ex.ExampleMethod("Extension method") End Sub Class ExampleClass ' Define an instance method named ExampleMethod. Public Sub ExampleMethod() Console.WriteLine("Instance method") End Sub End Class <Extension()> Sub ExampleMethod(ByVal ec As ExampleClass, ByVal stringParameter As String) Console.WriteLine(stringParameter) End Sub End Module
Kotlin
// 扩展函数(本类中扩展方法) class Test1 { var name: String = "boyi.chen" } fun Test1.temp() { println("增加扩展函数,打印扩展类的属性name=${this.name}") } fun main(args: Array<String>) { // 调用位置 Test1().temp() }
Der Protagonist unterstützt keine Erweiterungsmethoden, aber wir können Erweiterungsmethoden über Plug-Ins implementieren ist eines der Plug-Ins.
Lombok @ExtensionMethod
Durch die Annotation Lombok @ExtensionMethod können wir statische Methoden generieren, die während der Programmkompilierung direkt aufgerufen werden. Schauen wir uns unten konkrete Beispiele an.
/** * lombok测试 * * @author reboot */ @ExtensionMethod(StringUtil.class) public class LombokTest { public static void main(String[] args) { System.out.println("".isBlank()); } /** * 字符串工具 * * @author reboot */ public static class StringUtil { /** * 字符串判空 * * @param targetStr 目标str * @return boolean */ public static boolean isBlank(String targetStr) { return targetStr == null || "".equals(targetStr); } } }
Sie können dem kompilierten Inhalt entnehmen, dass die Methode von „.isBlank()“ in „LombokTest.StringUtil.isBlank(““) konvertiert wurde. Auf diese Weise stellt Lombok uns den Syntaxzucker der Erweiterung zur Verfügung Methode. Wirklich so süß.
Das obige ist der detaillierte Inhalt vonSo erstellen Sie eine Java-Erweiterungsmethode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

Dreamweaver CS6
Visuelle Webentwicklungstools

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.