Co to jest klasa abstrakcyjna w Scala?
W Scali klasa abstrakcyjna służy jako nadtyp, który zawiera informacje o klasach podtypów. Aby osiągnąć abstrakcję, powstaje klasa abstrakcyjna. Abstrakcja oznacza ukrywanie informacji o implementacji i pokazanie tylko konkretnej funkcjonalności użytkowników końcowych. Możemy odziedziczyć tylko jeden streszczenie klasy, aby poprawnie utworzyć instancję. Klasy abstrakcyjnej nie można bezpośrednio utworzyć. Aby skonstruować klasę abstrakcyjną, musimy reprezentować klasę ze streszczeniem słów kluczowych.
Składnia klasy abstrakcyjnej w Scala
Składnia klasy Abstract Scala wygląda w ten sposób.
Streszczenie klasy_name
def Streszczenie_Method ()
Streszczenie jest reprezentowane ze słowem kluczowym „Streszczenie” z nazwą klasy. W klasie abstrakcyjnej stwierdziliśmy metody abstrakcyjne. Metoda abstrakcyjna jest bez kodu w swoim ciele.
Jak korzystać z klasy abstrakcyjnej w Scala w Ubuntu 20.04
Weźmy przykład i zobacz, jak utworzyć klasę abstrakcyjną wraz z metodą abstrakcyjną w Scala.
Przykład nr 1: Tworzenie klasy abstrakcyjnej w Scala
Możemy utworzyć klasę abstrakcyjną w programie za pomocą „abstrakcyjnego” słowa kluczowego z określoną nazwą klasy. Zróbmy kilka praktycznych tworzenia klasy abstrakcyjnej.
W powyższym kodzie zadeklarowaliśmy klasę ze słowem kluczowym „Streszczenie” i nazwaliśmy tę klasę „uczeń”. W klasie abstrakcyjnej zdefiniowaliśmy metody abstrakcyjne jako „informacje”. Kiedy definiujemy metodę abstrakcyjną w klasie abstrakcyjnej, nie potrzebujemy tam żadnej implementacji. Po utworzeniu klasy abstrakcyjnej stworzyliśmy zwykłą klasę o nazwie „stopień”. Ta klasa „stopień” rozszerza klasę abstrakcyjną. Tutaj metoda abstrakcyjna „Informacje” wyświetla nazwę studenta i nazwę stopnia. Następnie mamy główną metodę, w której musimy zdefiniować obiekt klasowy „stopnia”. Stworzyliśmy zmienną OBJ i przypisaliśmy to do instancji klasy „stopień”. Użyliśmy nowego słowa kluczowego, aby utworzyć klasę. Używamy instancji OBJ z wywołaną metodą „informacyjną”.
Z powodzeniem stworzyliśmy klasę abstrakcyjną i zdefiniowaliśmy metody abstrakcyjne w zwykłej klasie. Wyjście abstrakcyjnej metody klasy abstrakcyjnej poprzez instrukcję drukowania znajduje się na ekranie terminalu.
Przykład nr 2: Tworzenie instancji klasy abstrakcyjnej w Scala
W Scali nie możemy wyraźnie utworzyć instancji klasy abstrakcyjnej. Jeśli spróbujemy to zrobić, będziemy mieli błąd kompilacji. Poniżej staramy się ulepszyć klasę abstrakcyjną, tworząc instancję streszczenia, aby dowiedzieć.
W powyższej implementacji kodu stworzyliśmy klasę abstrakcyjną z „abstrakcyjnym” słowem kluczowym i nadaliśmy nazwę klasy jako „uniwersytet”. Następnie, bez ciała, zdefiniowaliśmy metodę abstrakcyjną. Metoda abstrakcyjna jest stosowana w głównej metodzie. Stworzyliśmy obiekt klasy „uniwersyteckiej” w głównej funkcji klasy abstrakcyjnej. Następnie przypisaliśmy ten obiekt do instancji klasy abstrakcyjnej „uniwersytetu” z nowym słowem kluczowym. To utworzy klasę abstrakcyjną.
Mamy komunikat o błędzie jako wyjście, którego nie możemy utworzyć instancji klasy abstrakcyjnej. W rezultacie nie jesteśmy w stanie generować obiektów klas abstrakcyjnych.
Przykład nr 3: Tworzenie pól w klasie abstrakcyjnej w Scala
Możemy również zdefiniować pola w klasie abstrakcyjnej. Klasa abstrakcyjna uzyskała dostęp do tych pola, a następnie abstrakcyjna metoda klasy odziedziczyła klasę abstrakcyjną. Poniżej znajduje się implementacja pokazanego kodu.
W powyższym kodzie stworzyliśmy klasę abstrakcyjną z słowem kluczowym „Streszczeniem” i nazwaliśmy tę klasę „nauczycielami”. W klasie abstrakcyjnej pola zawierają zmienną jako „Nauczyciela”, która jest inicjowana w wartości ciągu i ma ustawiony ciąg danych. Drugie pole jest również ze zmienną zdefiniowaną jako „Nauczyciela_subject”, która jest również ustawiona jako typ danych stringowych i zainicjowany z wartością ciągu. Tutaj „Teacher_detail” to abstrakcyjna metoda abstrakcyjnej klasy „nauczycieli”. Teraz „CS” jest deklarowane jako klasa, która rozszerza klasę abstrakcyjną. W tej klasie uzyskujemy dostęp do metody klasy abstrakcyjnej i pola klasy abstrakcyjnej, wywołując metodę abstrakcyjną. Stworzyliśmy obiekt, aby utworzyć klasę. Następnie używamy instancji OBJ z metodą klasy „CS”.
Mamy nazwisko nauczyciela i dane nauczyciela jako wyniki poniżej.
Przykład nr 4: Tworzenie konstruktora w Scala
Możemy stworzyć abstrakcyjny konstruktor klasy w kodzie. Możemy użyć konstruktora do zainicjowania obiektu, ale obiektu nie można tam zbudować. Kiedy tworzymy instancję odziedziczonej klasy, możemy wywołać konstruktor klasy abstrakcyjnej.
W powyższym kodzie zadeklarowaliśmy klasę abstrakcyjną jako „książka” wraz z konstruktorem. Konstruktor klasy abstrakcyjnej przyjmuje dwa argumenty jako „tytuł” i „autor”, a następnie w klasie abstrakcyjnej zdefiniowaliśmy szczegółowe metody abstrakcyjne. Teraz rozszerz klasę abstrakcyjną o klasę „powieść”. „Novel” klasowa będzie dostępna do metody abstrakcyjnej i zwróci konstruktor Wartości Wypłacanie danych wyjściowych powyższego kodu implementacji.
Wniosek
Jak omówiliśmy znaczenie klasy abstrakcyjnej, jest ona bardzo przydatna w Scali. Mamy krótkie wprowadzenie i definicję klasy abstrakcyjnej w Scala. Ponadto przeszliśmy przez różne przykładowe implementacje kodu. Mieliśmy głęboką dyskusję na temat klasy abstrakcyjnej w Scali. Po przeczytaniu artykułu będziesz miał mocny przyczepność do klasy abstrakcyjnej w Scali.