Jakie są metody rozszerzenia?
Metody rozszerzenia są rodzajem metody statycznej, która usuwa kłopot z edytowaniem kodu źródłowego do dodawania nowych metod. Oznacza to, że programiści mogą dodawać nowe funkcje do typów takich jak ciągi, liczby całkowite lub jakakolwiek inna klasa niestandardowa bez konieczności tworzenia nowej klasy lub modyfikowania oryginalnej klasy. Metody rozszerzenia są zdefiniowane w klasach statycznych i używają "Ten" Słowo kluczowe Aby określić rozszerzony typ, składnia do tworzenia metody rozszerzenia jest następująca:
Public Static ReturnType MethodName (ten parametr ExtendedType)Słowo kluczowe publiczne wskazuje, że metoda jest dostępna z dowolnego miejsca w kodzie, statyczne wskazuje, że metoda jest metodą statyczną, a powracanie to typ danych zwracany przez tę metodę. MethodName to nazwa metody rozszerzenia, a to słowo kluczowe, a następnie ExtendedType Parametr wskazuje, że ta metoda rozszerza klasę ExtendedType.
Parametr to parametr przekazany do metody, a implementacja metody jest zapisywana wewnątrz klamrowych klamrów . Ta składnia umożliwia programistom tworzenie nowych metod dla istniejących typów, dzięki czemu kod jest bardziej wielokrotnego użytku i modułowy.
Jak używać metody rozszerzenia do rozszerzenia klasy ciągów
Załóżmy, że chcesz dodać nową metodę do klasy ciągów, która kapitalizuje pierwszą literę ciągu, możesz to zrobić za pomocą metody rozszerzenia za pomocą poniższego kodu:
za pomocą systemu;Utworzyliśmy nową aplikację konsoli, która zawiera klasę Stringextensions, a w głównej stronie utworzyliśmy zmienną ciągu nazwaną jako wejście i przypisaliśmy jej ciągły ciąg „Hello Linux”. Następnie CAPITIZEFIRSTLETTER Metoda rozszerzenia jest wywoływana w ciągu wejściowego, który kapitalizuje pierwszą literę ciągu. Wreszcie, drukujemy wynik do konsoli za pomocą funkcji „writeLine ()”, więc powinieneś zobaczyć dane wyjściowe „Hello Linux” Podczas realizacji tego programu:
Jak używać metody rozszerzenia do rozszerzenia klasy liczb całkowitych
Załóżmy, że chcesz dodać nową metodę do klasy liczb całkowitych, która określa, czy liczba całkowita jest równa czy dziwna. Możesz to zrobić za pomocą metody rozszerzenia, jak pokazano poniżej:
za pomocą systemu;Kod tworzy metodę rozszerzenia dla typu danych INT i Iseven funkcja zwraca true, jeśli liczba całkowita wejściowa jest równa, a w przeciwnym razie fałsz.
W głównym utworzyliśmy numer zmiennej liczby całkowitych i przypisaliśmy ją wartość 10, a następnie wywołujemy metodę rozszerzenia ISEVEN na zmiennej liczbowej, która zwraca prawdziwie, ponieważ 10 jest parzyste. Wreszcie, drukujemy wynik do konsoli za pomocą funkcji „writeLine ()”, więc powinieneś zobaczyć dane wyjściowe „10 jest nawet” Podczas realizacji tego programu:
Jak używać metody rozszerzenia do rozszerzenia interfejsu listy
Powiedzmy, że chcesz dodać nową metodę do Ilist interfejs, który określa, czy lista jest pusta, czy nie, i aby użyć jej metody rozszerzenia, jak pokazano poniżej:
za pomocą systemu;W tym przykładzie stworzyliśmy metodę rozszerzenia Ismpty dla Ilist Typ danych, gdzie t jest parametrem typu ogólnego. Jest pusty Metoda zwraca true, jeśli lista wejściowa jest zerowa lub nie ma żadnych elementów, a Fałsz inaczej. Zasadniczo stworzyliśmy nowy Lista nazywane liczbami, a następnie nazywane Jest pusty Metoda rozszerzenia na liście liczb, która zwraca prawdziwie, ponieważ lista jest pusta. Początkowo drukujemy wynik do konsoli za pomocą funkcji „writeLine ()”, więc powinieneś zobaczyć wyjście "Lista jest pusta" Podczas realizacji tego programu:
Wniosek
Metody rozszerzenia są jedną z najbardziej przydatnych funkcji C#, która pozwala programistom rozszerzyć istniejące typy o nową funkcjonalność bez modyfikowania ich oryginalnego kodu. Metody rozszerzenia są zdefiniowane w klasie statycznej i używają "Ten" Słowo kluczowe, a następnie rozszerzony typ, aby wskazać, że są to metody rozszerzenia. W tym artykule widzieliśmy trzy przykłady metod rozszerzenia, które rozszerzają klasy, liczbę całkowitą i ilist.