25 februarie 2020

Alte întrebări culese de la interviuri

1. Două dintre următoarele afirmații sunt corecte:
a) hashCode() ajută la localizarea obiectelor în colecții
b) hashCode() trebuie să întoarcă un număr întreg, pozitiv
c) Implementarea lui hashCode() în clasa String este moștenită din Object
d) Două stringuri goale vor produce hashCode() identic

Adevărat: d
Fals: b, c
---

2. Ce afișează următorul program?

public class Main {
    public static void main(String args[]) {       
        int abc [] = {2, 3, 4};
        int def [] = fix(abc);
        System.out.println(abc[0] + abc[1] + abc[2]);
        System.out.println(def[0] + def[1] + def[2] + " ");
    }
   
    private static int [] fix(int [] array) {
        array[1] = 0;
        return array;
    }
}

Răspuns: 6 6
Metoda fix primește ca parametru referința la un obiect int [].

---

3. Care din următoarele situații nu cauzează un thread să se oprească, în mod direct:
a) wait()
b) notify()
c) sleep()
d) încercarea de a citi dintr-un InputStream

---

4. Avem două cuburi prin care vrem să afișăm zilele din calendar. Cum putem dispune cifrele?

Răspuns: Cubul 1 ia cifrele 0, 1, 2, 3, 4, 5 și Cubul 2 ia cifrele 0, 1, 2, 6, 7, 8 (6 se întoarce în 9).

18 februarie 2020

O colecție de întrebări pentru interviuri, ediția București 2020

Java SE
- polimorfism, mostenire
- modificatori de acces în JSE, diferența între protected și default
- cum functioneaza variabilele statice
- despre tipurile de excepții: checked și unchecked
- de ce se folosește finally
- try with resources
- cum se creează un obiect immutable
- diferența intre int si Integer
- despre stringuri, mutabile sau imutabile?
- concatenarea de stringuri din java, de ce e costisitor?
- StringBuilder vs StringBuffer
- care sunt tipurile de colecții: liste, seturi, map etc
- diferența List, Map și Set
- set ordonat--- TreeSet? cum se ordonează?
- diferența între Comparable si Comparator
- parsare XML cu java - cum?

- Struts, Servlet
- filtre din Servlet
- interceptor din Struts2
- JSP e thread safe?
- cum functionau aplicațiile Swing pe mai multe thread-uri - cum stia primul thread ca s-a terminat al doilea?
- JDBC, Hibernate
- de ce să folosesți JDBC comparativ cu un ORM?
- tipuri de statements in JDBC
- cum te protejezi de JDBC injection
- la ce se foloseste Maven, tipuri de scope-uri si la ce sunt folosite

Javascript, HTML
- HTML tags, caracteristici html5
- diferența GET/POST
- cum te protejezi de sniffing pe rețea
- obiecte in javascript, se poate folosi let in Javascript?
- multithreading in Javascript? Dar in html? web workers?
- Ajax - cum funcționeaza
- tipuri de atribute ale unui cookie
- tipuri de atacuri în oasp - top 10 vulnerabilities

Baze de date
- ce este un index într-o BD, ce este un trigger
- SQL: diferenta între delete și truncate (truncate nu activează trigger)
- tipuri de join, diferența între left și right join

Altele
- exemple de ședințe Agile
- design patterns exemple
- singleton si multithreading, cum se poate face thread safe
- REST api (x2)
- Linux exemple de comenzi, comanda pt schimbarea parolei, logare ca admin
- un excel care comunică lent cu o BD, cum se poate depana, primii pași?