30 top java collections interview questions with answers
Ten samouczek zawiera listę najczęściej zadawanych pytań dotyczących kolekcji Java wraz z odpowiedziami i przykładami :
Podstawowym interfejsem API języka Java jest Java Collections Framework. Obsługuje podstawową koncepcję tego języka programowania. Jeśli chcesz zostać programistą Java, powinieneś dobrze znać te podstawowe pojęcia.
Obszar kolekcji Java jest niezwykle szeroki i podczas wywiadu można zadać wiele pytań. Tutaj zebraliśmy listę tylu istotnych pytań, które mogą zostać zadane podczas rozmowy kwalifikacyjnej.
=> Zajrzyj tutaj, aby zobaczyć A-Z samouczków szkoleniowych Java tutaj
Czego się nauczysz:
Pytania do wywiadu dotyczącego kolekcji Java
Q # 1) Wyjaśnij strukturę kolekcji Java.
Odpowiedź: Java Collections Framework to architektura, która pomaga w zarządzaniu i przechowywaniu grupy obiektów. Dzięki niemu programiści mogą uzyskać dostęp do wstępnie spakowanych struktur danych i manipulować danymi przy użyciu algorytmów.
Kolekcja Java obejmuje interfejs i klasy, które obsługują takie operacje, jak wyszukiwanie, usuwanie, wstawianie, sortowanie itp. Oprócz interfejsu i klas kolekcje Java zawierają również algorytmy, które pomagają w manipulacjach.
Pytanie 2) Jakie są zalety kolekcji Java?
Odpowiedź:
Zalety kolekcji Java to:
- Zamiast implementować nasze klasy kolekcji, używa podstawowych klas kolekcji, zmniejszając w ten sposób wysiłek wymagany do jej rozwoju.
- Używa dobrze przetestowanych klas struktury kolekcji. W związku z tym poprawia się jakość jego kodu.
- Zmniejsza wysiłek związany z utrzymaniem kodu.
- Java Collection Framework jest interoperacyjna i wielokrotnego użytku.
P # 3) Co wiesz o hierarchii kolekcji w Javie?
Odpowiedź:
(wizerunek źródło )
Pytanie 4) Opowiedz nam o podstawowych interfejsach kolekcji Java.
Odpowiedź:
Poniżej wymieniono podstawowe interfejsy Java Collection Framework.
Kolekcja: Jest podstawą hierarchii kolekcji i reprezentuje jej elementy. Jednak Java nie zapewnia żadnego bezpośredniego zastosowania Collection. Ponadto większość kolekcji Java pochodzi z tego interfejsu.
Zestaw: Nie może zawierać zduplikowanych elementów, ponieważ modeluje abstrakcję zbioru matematycznego. Jak sama nazwa wskazuje, reprezentuje zestawy, na przykład, talia kart.
Lista: Może zawierać zduplikowane elementy i jest uporządkowaną kolekcją. Możesz użyć jego indeksu, aby uzyskać dostęp do dowolnego elementu w nim. Lista jest jak układ, tablica o dynamicznej długości.
Oto kilka interfejsów kolekcji Java. Istnieje jednak kilka innych interfejsów, jak pokazano poniżej.
- Kolejka
- Usuń z kolejki
- Iterator
- Iterowalne
- SortedSet
- ListIterator.
P # 5) Dlaczego interfejsy serializowalne i klonowalne nie są rozszerzane przez kolekcję Berło?
Odpowiedź: Zadaniem interfejsu kolekcji jest określenie grupy obiektów zwanych elementami. Wdrożenie Zbiorów decyduje o sposobie utrzymania elementów. Na przykład, implementacje List pozwalają na zduplikowane elementy, ale implementacje Set nie.
Wiele implementacji ma metodę publicznego klonowania. Jednak uwzględnienie go we wszystkich implementacjach Collection jest niepraktyczne, ponieważ Collection jest abstrakcyjna i liczy się tylko implementacja.
Znaczenie i konsekwencje zarówno serializacji, jak i klonowania mają sens podczas pracy z implementacjami merytorycznymi. W związku z tym faktyczna implementacja decyduje, czy można ją serializować lub sklonować i jak.
Dowiedz się więcej = >> Interfejs markera w Javie: serializowalny i klonowalny
Dlatego wprowadzenie serializacji i klonowania w każdej implementacji nie jest zbyt elastyczne i restrykcyjne.
P # 6) Co rozumiesz przez Iterator w Java Collection Framework?
Odpowiedź: W prostych tablicach możemy użyć pętli, aby uzyskać dostęp do każdego elementu. Gdy potrzebne jest podobne podejście, aby uzyskać dostęp do elementów w kolekcji, wybieramy iteratory. Iterator to konstrukcja używana do uzyskiwania dostępu do elementów obiektów Collection.
W Javie Iteratory to obiekty implementujące interfejs „Iterator” Framework Collection. Ten interfejs jest częścią pakietu java.util.
Oto niektóre cechy Iteratorów:
- Iteratory służą do przechodzenia przez obiekty Collection.
- Iteratory są znane jako „Universal Java Cursor”, ponieważ możemy używać tego samego Iteratora dla wszystkich kolekcji.
- Iteratory zapewniają operacje „Odczytaj” i „Usuń” oprócz przechodzenia przez kolekcje.
- Ponieważ są uniwersalne i działają ze wszystkimi kolekcjami, Iteratory są łatwiejsze do wdrożenia.
Lista pytań dotyczących kolekcji Java
P # 7) Czy znasz zastosowania interfejsu List?
(wizerunek źródło )
Odpowiedź: Celem interfejsu List jest utrzymanie kolejności wstawiania. Pozwala również na przechowywanie zduplikowanych wartości.
Pomaga w płynnej manipulacji elementami w zależności od ich indeksu za pomocą różnych zawartych w nim metod. ArrayList, Vector, Stack i LinkedList to różne klasy implementujące interfejs List.
P # 8) Co rozumiesz na temat ArrayList w Javie?
Odpowiedź: Implementacja interfejsu List to ArrayList. Dynamicznie dodaje lub usuwa elementy z listy, a także zapewnia wstawianie elementów wraz z dostępem pozycyjnym. ArrayList dopuszcza zduplikowane wartości, a jego rozmiar może dynamicznie rosnąć, jeśli liczba elementów przekroczy rozmiar początkowy.
P # 9) W jaki sposób przekonwertujesz tablicę ciągów na ArrayList?
Odpowiedź: To jest pytanie programistyczne na poziomie początkującym, które osoba przeprowadzająca rozmowę kwalifikacyjną zadaje, aby sprawdzić, czy znasz Collection utility.classes. Collection i Arrays to dwie klasy użytkowe Framework Collection, którymi często interesują się ankieterzy.
Kolekcje oferują określone funkcje statyczne do wykonywania określonych zadań na typach kolekcji. Chociaż Array ma funkcje narzędziowe, które wykonuje na typach tablic.
//String array String() num_words = {'one', 'two', 'three', 'four', 'five'}; //Use java.util.Arrays class to convert to list List wordList = Arrays.asList(num_words);
Zauważ, że oprócz typu String, możesz również użyć innego typu Arrays do konwersji na ArrayList.
Na przykład,
//Integer array Integer() numArray = {10,20,30,40}; //Convert to list using Arrays class asList method List num_List = Arrays.asList(numArray);
Q # 10) Konwertuj Array na ArrayList i ArrayList na Array.
Odpowiedź: Aby przekonwertować ArrayList na Array, używana jest metoda toArray () - List_object.toArray (nowy ciąg (List_object.size ()))
Chociaż metoda asList () jest używana do konwersji Array do ArrayList- Arrays.asList (pozycja). AsList () jest metodą statyczną, w której parametrami są obiekty List.
P # 11) Co to jest lista LinkedList i ile jej typów jest obsługiwanych w Javie?
(wizerunek źródło )
Odpowiedź: LinkedList to struktura danych z sekwencją łączy, w której każde łącze jest połączone z następnym łączem.
W Javie do przechowywania elementów używane są dwa typy LinkedList:
- Lista pojedynczo połączona: Tutaj każdy węzeł przechowuje dane węzła wraz z odniesieniem lub wskaźnikiem do następnego węzła.
- Lista podwójnie połączona: Podwójnie LinkedList zawiera podwójne odwołania, jedno odwołanie do następnego węzła i drugie do poprzedniego węzła.
P # 12) Co rozumiesz przez BlockingQueue?
Odpowiedź: W prostej kolejce wiemy, że gdy kolejka jest pełna, nie możemy wstawić więcej pozycji. W takim przypadku kolejka po prostu dostarcza komunikat, że kolejka jest pełna i kończy pracę. Podobny przypadek ma miejsce, gdy kolejka jest pusta i nie ma w niej elementu do usunięcia.
Zamiast wychodzić, gdy nie można wstawić / usunąć, co powiesz na poczekanie, aż będziemy mogli wstawić lub usunąć element?
Odpowiada na to odmiana kolejki o nazwie „Kolejka blokująca” . W kolejce blokującej blokowanie jest aktywowane podczas operacji umieszczania w kolejce i usuwania z kolejki za każdym razem, gdy kolejka próbuje umieścić pełną kolejkę w kolejce lub usunąć z kolejki pustą kolejkę.
Blokowanie pokazano na poniższym rysunku.
BlockingQueue
Tak więc podczas operacji umieszczania w kolejce kolejka blokująca będzie czekać, aż zwolni się miejsce, aby można było pomyślnie wstawić element. Podobnie w przypadku operacji usuwania z kolejki kolejka blokowania będzie czekać, aż element stanie się dostępny dla operacji.
dodaj do tablicy w java
Kolejka blokująca implementuje interfejs „BlockingQueue” należący do pakietu „java.util.concurrent”. Należy pamiętać, że interfejs BlockingQueue nie dopuszcza wartości null. Jeśli napotka wartość null, zgłosi wyjątek NullPointerException.
P # 13) Co to jest kolejka priorytetowa w Javie?
Odpowiedź: Kolejka priorytetowa w Javie jest podobna do struktury danych stosu lub kolejki. Jest to abstrakcyjny typ danych w Javie i jest zaimplementowany jako klasa PriorityQueue w pakiecie java.util. Kolejka priorytetowa ma specjalną cechę, że każda pozycja w kolejce priorytetowej ma priorytet.
W kolejce priorytetowej element o wyższym priorytecie jest serwerem przed elementem o niższym priorytecie.
Wszystkie pozycje w kolejce priorytetowej są uporządkowane zgodnie z naturalną kolejnością. Możemy również uporządkować elementy według niestandardowej kolejności, podając komparator w momencie tworzenia obiektu kolejki priorytetowej.
Ustaw pytania do wywiadu dotyczącego interfejsu
P # 14) Jaki jest pożytek z Set Interface? Opowiedz nam o klasach, które to implementują Berło.
Odpowiedź: Interfejs zbioru jest używany w teorii mnogości do kształtowania zbioru matematycznego. Jest podobny do interfejsu List, ale różni się od niego. Zestaw interfejsu nie jest uporządkowaną kolekcją, dlatego nie ma zachowanej kolejności podczas usuwania lub dodawania elementów.
Przede wszystkim nie obsługuje zduplikowanych elementów, więc każdy element interfejsu zestawu jest niepowtarzalny.
Umożliwia również znaczące porównania instancji Set, nawet jeśli istnieją różne implementacje. Ponadto zawiera bardziej znaczący kontrakt na działania operacji equals i hashCode. Jeśli dwa przykłady mają te same elementy, to są równe.
Z tych wszystkich powodów interfejs Set nie ma operacji opartych na indeksach elementów, takich jak Lista. Używa tylko metod dziedziczonych przez interfejs kolekcji. TreeSet, EnumSet, LinkedHashSet i HashSet implementują Set Interface.
Q # 15) Chcę dodać element zerowy do HashSet i TreeSet. Czy mogę?
Odpowiedź: Nie możesz dodać żadnego pustego elementu w TreeSet, ponieważ używa on NavigableMap do przechowywania elementów. Ale możesz dodać tylko jeden do HashSet. SortedMap nie zezwala na puste klucze, a NavigableMap jest ich podzbiorem.
Dlatego nie możesz dodać pustego elementu do TreeSet, pojawi się wyjątek NullPointerException za każdym razem, gdy spróbujesz to zrobić.
P # 16) Co wiesz o LinkedHashSet?
Odpowiedź: LinkedHashSet jest podklasą HashSet i wymusza interfejs Set. Jako uporządkowana forma HashSet, zarządza podwójnie połączoną listą we wszystkich zawartych w niej elementach. Zachowuje kolejność wstawiania i podobnie jak jego klasa nadrzędna zawiera tylko unikalne elementy.
Q # 17) Porozmawiaj o sposobie, w jaki HashSet przechowuje elementy.
Odpowiedź: HashMap przechowuje pary klucz-wartość, ale klucze powinny być unikalne. Ta funkcja Map jest używana przez HashSet, aby upewnić się, że każdy element jest unikalny.
Deklaracja mapy w HashSet pojawia się, jak pokazano poniżej:
private transient HashMapmap; //This is added as value for each key private static final Object PRESENT = new Object();
Przechowywane elementy w HashSet są przechowywane jako klucz w Mapie, a obiekt jest przedstawiany jako wartość.
Q # 18) Wyjaśnij metodę EmptySet ().
Odpowiedź: Metoda Emptyset () usuwa elementy o wartości null i zwraca pusty zestaw, którego nie można zmienić. Ten niezmienny zestaw jest możliwy do serializacji. Deklaracja metody Emptyset () to public static final Set emptySet ().
Pytania do wywiadu dotyczącego interfejsu mapy
Q # 19) Opowiedz nam o interfejsie mapy.
Odpowiedź: Interfejs Map jest przeznaczony do szybszego wyszukiwania i przechowuje elementy w postaci par klucz-wartość. Ponieważ każdy klucz jest tutaj unikalny, łączy się lub mapuje tylko do jednej wartości. Te pary klucz-wartość nazywane są pozycjami mapy.
W tym interfejsie istnieją sygnatury metod do pobierania, wstawiania i usuwania elementów w zależności od unikalnego klucza. To sprawia, że jest to doskonałe narzędzie do mapowania skojarzeń klucz-wartość, na przykład słownik.
P # 20) Mapa nie rozszerza interfejsu kolekcji. Czemu?
Odpowiedź: Interfejs kolekcji to akumulacja obiektów, a obiekty te są przechowywane strukturalnie z mechanizmem określonego dostępu. Podczas gdy interfejs Map jest zgodny ze strukturą par klucz-wartość. Metoda dodawania interfejsu kolekcji nie obsługuje metody wstawiania interfejsu mapy.
Dlatego Map nie rozszerza interfejsu kolekcji, ale nadal jest ważną częścią struktury kolekcji Java.
Q # 21) Jak działa HashMap w Javie?
Odpowiedź: HashMap to kolekcja oparta na Map, a jej elementy składają się z par klucz-wartość. HashMap jest zwykle oznaczany przez lub. Dostęp do każdego elementu hashmap można uzyskać za pomocą jego klucza.
HashMap działa na zasadzie „haszowania”. W technice mieszania dłuższy ciąg jest przekształcany w mniejszy ciąg przez „funkcję skrótu”, która jest niczym innym jak algorytmem. Mniejszy ciąg pomaga w szybszym wyszukiwaniu i wydajnym indeksowaniu.
Q # 22) Wyjaśnij IdentityHashMap, WeakHashMap i ConcurrentHashMap.
Odpowiedź:
IdentityHashMap jest bardzo podobny do HashMap. Różnica polega na tym, że podczas porównywania elementów IdentityHashMap używa równości odwołań. Nie jest to preferowana implementacja mapy i chociaż wykonuje interfejs mapy, celowo nie spełnia ogólnego kontraktu dotyczącego mapy.
Tak więc podczas porównywania obiektów upoważnia to do użycia metody equals. Jest przeznaczony do użycia w rzadkich przypadkach, gdy potrzebna jest semantyka równości odwołań.
WeakHashMap Implementacja przechowuje tylko słabe odniesienia do swoich kluczy. Umożliwia to wyrzucanie elementów bezużytecznych pary klucz-wartość, gdy nie ma już odniesienia do jej kluczy poza WeakHashMap.
Jest używany głównie z tymi kluczowymi obiektami, w których test tożsamości obiektu jest przeprowadzany za pomocą metod equals przy użyciu operatora ==.
ConcurrentHashMap implementuje interfejsy ConcurrentMap i Serializable. Jest to ulepszona, ulepszona wersja HashMap, ponieważ nie działa dobrze w środowisku wielowątkowym. W porównaniu do HashMap ma wyższy wskaźnik wydajności.
P # 23) Jaka jest jakość dobrego klucza do HashMap?
Odpowiedź: Rozumiejąc, jak działa HashMap, łatwo jest wiedzieć, że zależą one głównie od równości i metod hashCode kluczowych obiektów. Tak więc dobry klucz musi w kółko zapewniać ten sam hashCode, niezależnie od czasu jego pobrania.
W ten sam sposób, w porównaniu z metodą equals, te same klucze muszą zwracać wartość true, a różne klucze muszą zwracać false. Dlatego mówi się, że najlepszym kandydatem na klucze HashMap są niezmienne klasy.
P # 24) Kiedy można używać TreeMap?
(wizerunek źródło )
Odpowiedź: TreeMap, jako specjalna forma HashMap, utrzymuje domyślną kolejność kluczy „naturalną kolejność”, której brakuje w HashMap. Możesz go użyć do sortowania obiektów za pomocą jakiegoś klucza.
Na przykład, jeśli chcesz zaimplementować i wydrukować słownik w porządku alfabetycznym, możesz użyć TreeMap razem z TreeSet. Posortuje się automatycznie. Oczywiście mogłeś to również zrobić ręcznie, ale praca zostanie wykonana wydajniej przy użyciu TreeMap. Możesz go również użyć, jeśli dostęp losowy jest dla Ciebie niezbędny.
Różnica między pytaniami
P # 25) Jaka jest różnica między kolekcją a kolekcjami?
Odpowiedź:
Kolekcja | Kolekcje |
---|---|
Nie możemy użyć ListIterator do przechodzenia przez zestaw. | ListIterator może przechodzić przez List w dowolnym kierunku. |
To jest interfejs. | To jest klasa. |
Kolekcja reprezentuje grupę obiektów jako pojedynczą jednostkę. | Kolekcje definiują różne metody użyteczności obiektów kolekcji. |
Jest to główny interfejs Collection Framework. | Kolekcje są klasą użytkową. |
Wyprowadza struktury danych Collection Framework. | Kolekcje zawierają wiele różnych metod statycznych wspomagających manipulowanie strukturą danych. |
P # 26) Czym różni się Array od ArrayList?
Odpowiedź:
Różnice między Array i ArrayList są podane poniżej:
Szyk | ArrayList |
---|---|
Tablica jest klasą o jednoznacznie określonym typie. | ArrayList to klasa o luźnym typie. |
Nie można dynamicznie zmieniać rozmiaru tablicy, jej wymiar jest statyczny. | Rozmiar tablicy ArrayList można zmieniać dynamicznie. |
Tablica nie wymaga pakowania i rozpakowywania elementów. | ArrayList wymaga pakowania i rozpakowywania elementów. |
Q # 27) Rozróżnij ArrayList i LinkedList.
Odpowiedź:
ArrayList | Połączona lista |
---|---|
ArrayList używa wewnętrznej tablicy dynamicznej do przechowywania elementów. | LinkedList implementuje podwójnie połączoną listę. |
Manipulowanie elementami ArrayList jest raczej powolne. | LinkedList manipuluje swoimi elementami znacznie szybciej. |
ArrayList może działać wyłącznie jako lista. | LinkedList może działać zarówno jako lista, jak i kolejka. |
Przydatne do przechowywania i uzyskiwania dostępu do danych. | Przydatne do manipulowania danymi. |
P # 28) Czym różni się Iterowalność od Iteratora?
Odpowiedź:
Iterowalne | Iterator |
---|---|
Jest to interfejs pakietu Java.lang. | Jest to interfejs pakietu Java.util. |
Udostępnia tylko jedną abstrakcyjną metodę znaną jako Iterator. | Zawiera dwie abstrakcyjne metody - hasNext i next. |
Reprezentuje szereg elementów, przez które można przejść. | Oznacza obiekty ze stanem iteracji. |
Q # 29) Określ różnice między zestawem i listą.
Odpowiedź:
Zestaw | Lista |
---|---|
Zestaw narzędzi Zestaw interfejsu. | Lista implementuje interfejs List. |
Zestaw to nieuporządkowany zestaw elementów. | Lista jest uporządkowanym zestawem elementów. |
Zestaw nie zachowuje kolejności elementów podczas wstawiania. | Lista zachowuje kolejność elementów podczas wstawiania. |
Zestaw nie zezwala na zduplikowane wartości. | Lista zezwala na zduplikowane wartości. |
Zestaw nie zawiera żadnej starszej klasy. | Lista zawiera klasę Vector, starszą. |
Zestaw dopuszcza tylko jedną wartość null. | Brak ograniczeń dotyczących liczby wartości null na liście. |
Pytanie 30) Jaka jest różnica między kolejką a stosem?
Odpowiedź:
Kolejka | Stos |
---|---|
Kolejka działa na zasadzie FIFO (First-In-First-Out). | Stos działa na zasadzie Last-In-First-Out (LIFO). |
Wstawianie i usuwanie w kolejce odbywa się na różnych końcach. | Wstawianie i usuwanie odbywa się z tego samego końca zwanego wierzchołkiem stosu. |
Enqueue to nazwa wstawiania, a dequeue to usuwanie elementów. | Push to wstawienie, a Pop to usunięcie elementów w stosie. |
Posiada dwa wskaźniki - jeden do pierwszego elementu listy (przód) i jeden do ostatniego (tył). | Ma tylko jeden wskaźnik wskazujący na górny element. |
P # 31) W jaki sposób SinglyLinkedList i DoublyLinkedList różnią się od siebie?
Odpowiedź:
Lista pojedynczo połączona | Lista podwójnie połączona |
---|---|
Każdy węzeł pojedynczo połączonej listy składa się z danych i wskaźnika do następnego węzła. | Lista podwójnie połączona składa się z danych, wskaźnika do następnego węzła i wskaźnika do poprzedniego węzła. |
Po liście połączonej pojedynczo można przejść za pomocą następnego wskaźnika. | Lista podwójnie połączona może być przemierzana przy użyciu zarówno poprzedniego, jak i następnego wskaźnika. |
Lista połączona pojedynczo zajmuje mniej miejsca w porównaniu z listą połączoną podwójnie. | Lista połączona podwójnie zajmuje dużo miejsca w pamięci. |
Dostęp do elementu nie jest zbyt wydajny. | Dostęp do elementu jest wydajny. |
P # 32) Czym różni się HashMap od HashTable?
Odpowiedź:
HashMap | HashTable |
---|---|
HashMap dziedziczy klasę AbstractMap | HashTable dziedziczy klasę Dictionary. |
HashMap nie jest zsynchronizowany. | HashTable jest zsynchronizowany. |
HashMap zezwala na wiele wartości null, ale tylko jeden klucz o wartości null. | HashTable nie zezwala na wartość null ani klucz. |
HashMap jest szybszy. | HashTable jest wolniejszy niż HashMap. |
Iterator może przechodzić przez HashMap. | Nie można przejść przez HashTable używając iteratora lub modułu wyliczającego. |
Q # 33) Wypisz różnice między ArrayList i Vector.
Odpowiedź:
ArrayList | Wektor |
---|---|
ArrayList nie jest zsynchronizowana. | Wektor jest zsynchronizowany. |
ArrayList nie jest klasą starszą. | Vector jest klasą starszą. |
ArrayList zwiększa rozmiar o połowę ArrayList, gdy element zostanie wstawiony poza jego rozmiar. | Vector zwiększa swój rozmiar dwukrotnie, gdy element zostanie wstawiony poza jego rozmiar. |
ArrayList nie jest bezpieczna wątkowo | Wektor jest bezpieczny dla wątków. |
Q # 34) Czym różni się FailFast od Failsafe?
Odpowiedź:
FailFast | FailSafe |
---|---|
Podczas iteracji nie jest dozwolona żadna modyfikacja kolekcji. | Umożliwia modyfikację podczas iteracji. |
Używa oryginalnej kolekcji do trawersów. | Używa kopii oryginalnej kolekcji. |
Nie jest wymagana dodatkowa pamięć. | Potrzebuje dodatkowej pamięci. |
Zgłasza wyjątek ConcurrentModificationException. | Żaden wyjątek nie jest zgłaszany. |
Wniosek
Te pytania do rozmowy kwalifikacyjnej dotyczące kolekcji Java pomogą Ci przygotować się do rozmowy kwalifikacyjnej. Twoje przygotowanie do rozmowy kwalifikacyjnej dotyczącej kolekcji Java musi być głębokie i obszerne, więc przestudiuj te pytania i dobrze zrozum koncepcję.
Te pytania sprawdzają nie tylko twoją wiedzę, ale także trzeźwość umysłu.
=> Obejrzyj serię prostych szkoleń dotyczących języka Java
rekomendowane lektury
- Samouczek JAVA dla początkujących: ponad 100 praktycznych samouczków wideo Java
- Podstawy języka Java: składnia języka Java, klasa języka Java i podstawowe pojęcia dotyczące języka Java
- Pytania i odpowiedzi do wywiadu
- ETL Pytania i odpowiedzi podczas rozmowy kwalifikacyjnej testującej
- 30 najważniejszych pytań i odpowiedzi HTML do wywiadów (LISTA 2021)
- Top 30+ popularnych pytań i odpowiedzi do wywiadów z ogórkami
- 40 najpopularniejszych pytań i odpowiedzi do wywiadów dotyczących Java 8 (najważniejsze)
- 30 najpopularniejszych pytań i odpowiedzi do wywiadów SAS