Rekrutacja

Dla większości programistów rekrutacja nie jest najprostszym etapem – szczególnie dla tych najmniej doświadczonych. Są oni nie obyci z procesem rekrutacji, co może powodować dodatkowy stres.

Z poniższych materiałów dowiesz się więcej o procesie rekrutacji, poznasz pytania rekrutacyjne Java oraz przeczytaj o wskazówkach dotyczących samej rekrutacji i tworzeniu CV.

Java pytanie rekrutacyjne: Jakie znasz kolekcje w Javie?

Jakie znasz kolekcje w Javie? Wymień ich charakterystyczne cechy Pakiet java.util oferuje wiele różnych kolekcji do wykorzystania przez programistę. Każda z kolekcji jest implementowana na różne sposoby, przez co programista musi wybrać, która implementacja będzie działać najszybciej w jego aktualnym problemie. My jednak się skupimy na samych kolekcjach, a nie na ich konkretnych implementacjach. List, …

Java pytanie rekrutacyjne: Jakie znasz kolekcje w Javie? Read More »

Java pytanie rekrutacyjne: Obiekt immutable

Czym jest obiekt immutable? Obiekt immutable jak sama nazwa wskazuje jest niezmienny czyli podczas swojego „życia” nie może zmienić swojego stanu. Oczywiście czasami jest możliwa zmiana stanu obiektu np. String: String s = „qwe”; s = „any”; Jednak wiąże się to za każdym razem z utworzeniem nowego obiektu. W skrócie oznacza to, że adres zmiennej s się …

Java pytanie rekrutacyjne: Obiekt immutable Read More »

Java pytanie rekrutacyjne: Testy jednostkowe

Czym są testy jednostkowe? Testy jednostkowe polegają na napisaniu kodu źródłowego, który wykonuje inny kod (produkcyjny) weryfikując poprawność jego działania. Jak sama nazwa wskazuje testujemy jednostki – czyli małe części – a dokładniej mówiąc metody. Mówiąc ściślej – metody publiczne traktując je jak czarne skrzynki. Dajemy konkretne dane wejściowe i oczekujemy poprawnych danych wyjściowych – …

Java pytanie rekrutacyjne: Testy jednostkowe Read More »

Java pytanie rekrutacyjne: Wykonywanie bloku finally

Czym blok finally jest wykonywany w przypadku złapania wyjątku? W przypadku, gdy mamy blok try catch możemy dodać kolejny blok finally, który powinnien wykonywać się zawsze. Jednak czy na pewno jest to prawda? Co w przypadku, gdy złapiemy wyjątek lub zwrócimy wartość z metody już w bloku try? Przetestujmy to na prostych przykładach: package pl.rekrutacja.pytanie; …

Java pytanie rekrutacyjne: Wykonywanie bloku finally Read More »

Java pytanie rekrutacyjne: Przeciążanie i przesłanianie metod

Czym różni się przeciążanie od przysłaniania metod? Przeciążanie metody polega na stworzeniu wielu metod o tej samej nazwie, lecz przyjmującymi inne parametry. Taki mechanizm pozwala użytkownikowi użycie tej metody, która mu odpowiada – np. ma obiekt danego typu i nie chce go samodzielnie zmieniać. Takim przykładem może być parametr URL oraz String – zależnie od …

Java pytanie rekrutacyjne: Przeciążanie i przesłanianie metod Read More »

Java pytanie rekrutacyjne: Kolejność wykonywania operatorów

Kolejność wykonywania operatorów Jaki będzie rezultat działania poniższego programu? package org.blog; public class Main { public static void minLengthString(String s) { if (s != null && s.length() > 3) { System.out.println(„Napis ma więcej niż 3 znaki.”); } } public static void main(String[] args) { String strValue = null; minLengthString(strValue); } } Zostanie rzucony wyjątek NullPointerException, …

Java pytanie rekrutacyjne: Kolejność wykonywania operatorów Read More »

Java pytanie rekrutacyjne: Wieloparametrowe konstruktory

Czy wieloparametrowe konstruktory są poprawne? Wieloparametrowe konstruktory pod względem składni języka są poprawne, za to występują z nimi inne problemy. W przypadku, gdy mamy konstruktor z większą ilością parametrów np. cztery oraz większość parametrów jest tego samego typu to zaczynają się problemy. Stwórzmy prosty przykład, najzwyklejsza POJO klasa Usera z 6 polami: package org.blog; public …

Java pytanie rekrutacyjne: Wieloparametrowe konstruktory Read More »

Java pytanie rekrutacyjne: Metody typu wyliczeniowego

Wymień metody typu wyliczeniowego i opisz krótko ich przeznaczenie W typie wyliczeniowym znajdziemy następujące metody: name(), ordinal(), values(), valueOf(String name). Przypuśćmy, że mamy typ wyliczeniowy Gender: package org.blog; public enum Gender { MALE, FEMALE } name() Metoda zwraca nazwę obiektu, czyli wywołując: System.out.println(Gender.MALE.name()); Otrzymamy: MALE ordinal() Ze względu, że każdy obiekt typu wyliczeniowego ma przypisany swój …

Java pytanie rekrutacyjne: Metody typu wyliczeniowego Read More »

Java pytanie rekrutacyjne: Instancja klasy abstrakcyjnej

Czy można stworzyć instancję klasy abstrakcyjnej? TL;DR Nie można utworzyć instancji klasy abstrakcyjnej. Można to już wywnioskosować z nazwy – abstrakcyjna. Można to również bez problemu sprawdzić: package org.blog; public abstract class Entity { private Long id; public Entity(Long id) { this.id = id; } public Long getId() { return id; } } Podczas próby …

Java pytanie rekrutacyjne: Instancja klasy abstrakcyjnej Read More »

Java pytanie rekrutacyjne: String pool

Czym jest String Pool? String pool jest specjalnym miejscem w pamięci, do którego trafiają niektóre obiekty typu Stringi – dokładnie te, które nie są tworzone poprzez użycie operatora new. String pool został stworzony w celu optymalizacji JVM, dzięki niemu wiele obiektów Stringów o tej samej wartości wskazują na ten sam obszar pamięci. Co nam to …

Java pytanie rekrutacyjne: String pool Read More »