Wprowadzenie do pytań do wywiadu Java dla świeższych kandydatów
Jeśli szukasz pracy związanej z Javą, musisz przygotować się do pytań do rozmowy kwalifikacyjnej Java dla świeższych kandydatów. Chociaż każda rozmowa kwalifikacyjna jest inna, a zakres pracy jest również inny, możemy pomóc Ci z najważniejszymi pytaniami i odpowiedziami do wywiadu Java, które pomogą ci wykonać skok i odnieść sukces w wywiadzie Java.
Poniżej znajduje się lista najczęściej zadawanych pytań podczas wywiadu Java
1. Różnica między Buforem ciągów a String Builderem w Javie
Odpowiedź:
Jest to jedno z ulubionych pytań ankieterów, jednak kandydaci często na nie udzielają odpowiedzi.
Oto kilka znaczących różnic dotyczących bufora ciągów i konstruktora ciągów dla lepszego zrozumienia
1) StringBuilder to niezsynchronizowana wersja klasy StringBuffer. Metody w StringBuilder
Np. Wszystkie przeciążone wersje metody append () nie są synchronizowane.
2) StringBuilder działa szybciej niż StringBuffer ze względu na brak kosztów związanych z uzyskiwaniem i zwalnianiem blokad związanych z metodami synchronicznymi.
3) StringBuffer jest uważany za bezpieczny dla wątków, a StringBuilder nie, ponieważ jeśli taka synchronizacja jest wymagana, lepiej jest użyć klasy StringBuffer. Instancji klasy StringBuilder nie można współużytkować między wieloma wątkami
4) StringBuffer to stara klasa; jest włączony do JDK od pierwszego wydania, a StringBuilder jest stosunkowo nową klasą
5) Najważniejszym faktem na temat StringBuffer i StringBuilder jest to, że kiedy konkatenacja String jest wykonywana za pomocą operatora +, Java wewnętrznie konwertuje to wywołanie na odpowiednią klasę metody StringBuilder append (). Na przykład „jeden” + „dwa” + „trzy” zostaną przekonwertowane na nowy StringBuilder () .append („jeden”). Append („dwa”). Append („trzy”).
2. Program Java do znajdowania największej i najmniejszej liczby w tablicy liczb całkowitych
Odpowiedź:
Prosty wskaźnik 5, aby odpowiedzieć na to pytanie
- Utwórz plik źródłowy Java o nazwie MaximumMinimumArrayDemo.java i skopiuj kod, aby skompilować i wykonać w swoim ulubionym IDE
- Utwórz metodę o nazwie największej i najmniejszej (liczby int ()), aby wydrukować największą i najmniejszą liczbę tablic int przekazanych do programu.
- Użyj dwóch największych i najmniejszych zmiennych do przechowywania maksymalnych i minimalnych wartości z tablicy. Początkowo największa jest inicjowana za pomocą Integer.MIN_VALUE, a najmniejsza jest inicjowana za pomocą Integer.MAX_VALUE.
- Do wszystkich iteracji pętli porównaj bieżącą liczbę od największej do najmniejszej i odpowiednio ją zaktualizuj.
- Jeśli liczba jest większa niż największa, nie może być mniejsza niż najmniejsza, co oznacza, że nie musisz sprawdzać, czy pierwszy warunek jest spełniony, dlatego użyliśmy bloku kodu if-else, w innym przypadku tylko część wykonać, jeśli pierwszy warunek nie jest spełniony.
Logikę znajdowania największego elementu z tablicy w Javie podano poniżej.
Zamiast przypisywać zmienną Integer.MAX_VALUE, przypisaliśmy pierwszy element z tablicy.
3. Jaka jest różnica między C ++ a Javą?
Odpowiedź:
C ++ i Java są podobne tylko w porównaniach składniowych. Poniżej podano różnice:
-
- Java jest wielowątkowa
- Java nie ma wskaźników
- Java ma automatyczne zarządzanie pamięcią (odśmiecanie)
- Java jest niezależna od platformy
- Java ma wbudowaną obsługę dokumentacji komentarzy
- Java nie ma przeciążenia operatora
Java nie zapewnia wielu spadków
- W Javie nie ma żadnych destruktorów
4. Różnica między klasą abstrakcyjną a interfejsem?
Odpowiedź:
Wielokrotne dziedziczenie:
Klasa abstrakcyjna może dziedziczyć tylko jedną klasę abstrakcyjną; jednak w interfejsie klasa może implementować kilka interfejsów. Dowodzi to, że interfejs obsługuje wielokrotne dziedziczenie, podczas gdy klasa abstrakcyjna nie.
Realizacja:
Klasa abstrakcyjna może dostarczyć domyślny kod, ponieważ zawiera zarówno niekompletne, jak i kompletne elementy, podczas gdy interfejs nie może dostarczyć żadnego kodu, ponieważ zawiera tylko niekompletny element
Fields
Możemy zdefiniować pola i ograniczenia w klasie Abstract, natomiast w interfejsie nie można zdefiniować żadnych pól
Prędkość
Klasa abstrakcyjna jest szybka w porównaniu do interfejsu, ponieważ ten ostatni wymaga więcej czasu na znalezienie metody do odpowiedniej klasy
Stosowanie
Klasa abstrakcyjna pojawia się, gdy chcemy udostępnić wspólną funkcjonalność w relacji rodzic-dziecko, podczas gdy interfejs służy do definiowania i egzekwowania polimorfizmu, oddzielania i standaryzacji
5. Różnica między prywatnym, chronionym, publicznym i modyfikatorem pakietu lub słowem kluczowym w Javie
Odpowiedź:
prywatny vs. publiczny vs. chroniony vs. pakiet w Javie
Java ma cztery modyfikatory dostępu, a mianowicie; prywatny, chroniony, publiczny i na poziomie pakietu
dostęp na poziomie pakietu jest uważany za domyślny poziom dostępu oferowany przez Javę, jeżeli w przypadku braku identyfikatora modyfikatora dostępu
Te modyfikatory dostępu działają w celu ograniczenia dostępności klasy, metody lub zmiennej, do której się odnoszą
Poniżej opisano funkcje każdego modyfikatora dostępu i różnice między nimi
prywatne słowo kluczowe w Javie
- prywatny modyfikator w Javie można zastosować do pola członka, metody lub klasy zagnieżdżonej w Javie.
- Nie można używać prywatnego modyfikatora w klasie najwyższego poziomu.
- zmienne prywatne, metody i klasa są dostępne tylko w klasie, w której zostały zadeklarowane.
- Prywatna najwyższa forma enkapsulacji Java API zapewnia i powinna być używana w jak największym stopniu.
Najlepszą praktyką kodowania w Javie jest domyślnie deklarowanie zmiennej prywatnej. Metodę prywatną można wywołać tylko z klasy, w której została zadeklarowana
pakiet lub domyślny poziom dostępu w Javie
- pakiet jest słowem kluczowym używanym do deklarowania pakietu w Javie; pakiet to katalog, do którego należy klasa w Javie.
- pakiet lub domyślny poziom dostępu jest drugim najwyższym modyfikatorem ograniczającym dostęp po prywatnym, a każda zmienna, metoda lub klasa zadeklarowana jako pakiet-prywatny jest dostępna tylko w pakiecie, do którego należy.
Zaletą domyślnego modyfikatora jest to, że klasa najwyższego poziomu może być również prywatna dla pakietu, jeśli nie ma modyfikatora dostępu na poziomie klasy.
chronione słowo kluczowe w Javie
Różnica między prywatnym a chronionym słowem kluczowym polega na tym, że chroniona metoda, zmienna lub zagnieżdżona klasa jest dostępna nie tylko w klasie, w pakiecie, ale także poza pakietem w podklasie.
Jeśli zadeklarujesz, że zmienna jest chroniona, oznacza to, że każdy może jej użyć, jeśli rozszerzy twoją klasę. Klasa najwyższego poziomu również nie może być chroniona.
publiczne słowo kluczowe w Javie
Publiczny to najmniej restrykcyjny modyfikator dostępu w języku programowania Java i jego zła praktyka, aby domyślnie zadeklarować pole, metodę lub klasę publiczną, ponieważ po upublicznieniu bardzo trudno jest wprowadzić jakiekolwiek zmiany w wewnętrznej strukturze klasy, ponieważ wpływa to na wszystkich klientów korzystających z to.
Upublicznienie zmiennej klasy lub instancji również naruszyło zasadę enkapsulacji, która wcale nie jest dobra i źle wpływa na utrzymanie
Polecany artykuł
Jest to przewodnik po liście pytań i odpowiedzi na rozmowę kwalifikacyjną w języku Java, aby kandydat mógł łatwo przełamać te pytania podczas rozmowy kwalifikacyjnej w języku Java. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -
- Pytania do programisty Java
- Ważne pytania dotyczące wywiadu wielowątkowego Java
- Wywiad J2EE Pytania i odpowiedzi
- Java String wywiad pytanie i odpowiedzi
- Java 8 Wywiad Pytania i odpowiedzi