Obiekt pakietu Scala

Obiekt pakietu Scala
Możemy uczynić pola funkcji Scala i inną implementację kodu dostępne na poziomie pakietu. Głównym celem pakietu jest utrzymanie plików modułowych i łatwych w obsłudze. Możemy utrzymywać pliki w różnych odrębnych folderach lub katalogach w zależności od podanej przestrzeni nazw. Czasami chcemy, aby te zmienne definicje, funkcje, klasy lub obiekty były dostępne dla całego pakietu. Jednak utrzymanie zmiennych w pakiecie nie jest możliwe. Aby to osiągnąć, użyliśmy obiektu pakietu, który pozwala nam przechowywać wspólne dane na najwyższym poziomie pakietu. Tak więc, ilekroć chcemy uzyskać dostęp do członka klasy, będzie dostępny z tego konkretnego obiektu pakietu. W artykule otrzymamy pojęcie obiektów pakietów w Scala.

Co to jest obiekt pakietu w Scala?

Pakiet działa jak kontener, w którym wszystko jest zdefiniowane w klasie. Każdy pakiet ma odpowiednią nazwę pakietu w Scala. Dla każdego pakietu jest tylko jeden konkretny obiekt pakietu, który jest dostępny dla członków, które należy umieścić w kodzie źródłowym Scala. Obiekt pakietu włącza klasy lub obiekty definicji zmiennej, które mogą być dostępne dla całego utworzonego pakietu. Aby określić obiekt pakietu w naszym kodzie, najpierw utworzyliśmy plik o tej samej nazwie co pakiet Scala.

Jak utworzyć obiekt pakietu w Scala?

Aby wiedzieć, w jaki sposób możemy utworzyć obiekt pakietu dla głównej klasy, aby uzyskać dostęp do członków obiektów pakietu w Scala, powinniśmy spojrzeć na przykłady. Należy zauważyć, że cała implementacja kodu została wykonana w aplikacji IntelliJ IDEA.

Przykład 1: Program tworzenia obiektu pakietu w Scala

Mamy osobny obiekt jednego pakietu dla jedynej klasy, która uzyskuje dostęp do obiektu pakietu. Powinno to znajdować się w tym samym miejscu w tym samym katalogu i folderze. Utworzyliśmy obiekt pakietu dla klasy w poniższym kodzie.

W powyższym kodzie utworzyliśmy pakiet.plik Scala, który znajduje się w pakiecie „firma”. Ten pakiet.Scala można uzyskać przez plik klasowy, który nazywa się „telefon komórkowy.Scala ”. Paczka.Scala ścieżka jest podawana jako SRC/Company/Pakiet.Scala i ścieżka pliku klasowego jest podawana jako SRC/Company/Mobile.Scala. Zarówno obiekt pakietu, jak i plik klasy są na tym samym poziomie, a obiekt pakietu jest tylko dla klasy „Mobile.Scala ”. W obiekcie pakietu musimy zdefiniować pola, do których można uzyskać dostęp do pliku klasowego „Mobile”. Zmienna jest inicjowana z wartością ciągu i reprezentowana jako nazwa firmy. Druga zmienna jest reprezentowana jako wartość właściciela, a także ma wartość ciągu.

Teraz w pliku klasowym „Mobile” mamy kilka marek telefonów komórkowych przechowywanych w określonej zmiennej. Następnie, w głównej metodzie „demo” obiektu, wywołujemy nazwę telefonu komórkowego za pośrednictwem funkcji drukowania. Jak widać, zdefiniowaliśmy inną zmienną „Company_info”, która ma pola z obiektu pakietu. W instrukcji drukowania przekazaliśmy informacje o firmie, które zwróci wartości „Company_name” i „nazwa_ właściciela”. Te zwrócone wartości zmiennych są zdefiniowane w obiekcie pakietu.

Wyjście wyświetlone na poniższym obrazie pokazuje nazwę Campany_name i właściciela, które są inicjowane w zmiennej obiektu pakietu.

Przykład 2: Program dostępu do pola obiektu pakietu w pliku klasy w Scala

Tworzymy obiekt pakietu dla pliku klasowego tego obiektu. W ten sposób plik klasy może uzyskać dostęp do pól zadeklarowanych w pliku obiektu pakietu. Miejmy wdrożenie kodu poniżej.

W powyższym przykładzie kodu mamy plik obiektu pakietu dla klasy „samochód” w folderze „Licencja” pakietu „. Obiekt pakietu ma komunikaty zainicjowane jako ciąg w zmiennej. Te zmienne mogą być dostępne dla pliku klasy „samochodem”.

„Samochód” klasowy ma zmienną zdefiniowaną jako „person_age”, która jest ustalona jako „20”. Następnie mamy inny obiekt jako „demo”, który nazywana jest główną metodą. Po pierwsze, mamy instrukcję drukowania, która wydrukuje „osobę” z samochodu klasowego. Następnie mamy warunkowe stwierdzenie IF-Else dla wieku osoby. Jeśli person_age jest większy lub równy wartości „18”, będziemy mieli „msg_1” z obiektu pakietu. Jeśli warunek jest fałszywy, będziemy mieli drukowaną wartość „MSG_2”. Obie dostępne wiadomości są przechowywane w odpowiedniej zmiennej „Message_1” i „Message_2”.

Ponieważ wartość wieku przekazała jako „20”, która jest większa niż „18”, ustawiona w wyrażeniu warunkowym IF-Else. Tak więc tutaj otrzymaliśmy komunikat wyjściowy jako „Tak, możesz uprawniać do jazdy”. Dany warunek jest prawdziwy.

Przykład 3: Program tworzenia obiektu pakietu w pliku klasy w Scala

Możemy również tworzyć obiekty pakietów w pliku klasy. Poniżej mamy przykładową implementację kodu, w której utworzyliśmy obiekt pakietu dla pliku klasy w tym samym pliku klasy źródłowej.

W powyższym kodzie mamy nazwę pakietu jako obliczenia w folderze pakietu matematycznego. Mamy również obiekt pakietu importu do globalnego dostępu do członka klasy w całym kodzie. Następnie utworzyliśmy klasę obiektu jako „przykład 1”. W obiekcie klasy zainicjowaliśmy zmienną jako „a”, a drugą zmienną jako „b”, która jest wywoływana w głównej metodzie obiektu „demo”. W głównej metodzie mamy instrukcję drukowania, która wydrukuje wartości przechowywane w zmiennej „A” i „B”. Następnie w zmiennej „suma” mamy operację dodawania zmiennych „A” i „B”. Po operacji dodawania funkcja drukowania zwróci sumę „a” i „b”. Teraz mamy operację odejmowania zmiennych „x” i „y”. Zmienne te są zdefiniowane w obiekcie opakowania, który jest wymieniony na końcu kodu i wywoływana w głównej metodzie. Funkcja drukowania zwróci wartość z odejmowania „x” i „y”.

Jak widać, wyświetlacz wyjściowy na zrzucie ekranu podaje sumę od członków klasy i różnicę od obiektu pakietu.

Wniosek

Dyskusja na temat obiektu pakietu ma na celu wyraźną demonstrację tego, jakie jest użycie obiektów pakietów w Scala. Obiekt pakietu skróci długą linię kodu, która zwiększy czytelność. Mamy trzy przykłady tworzenia obiektu pakietu w inny sposób dla pliku klasowego tego konkretnego obiektu. Te przykłady zbudują biegłość na obiekcie pakietu. Mamy nadzieję, że masz dobrą wiedzę na temat obiektów opakowania w Scali po przeczytaniu tego artykułu.