JAVA – software engineer interview pills

50 questions interview java: https://codeburst.io/review-these-50-questions-to-crack-your-java-programming-interview-69d03d746b7f ORM hibernate-JPA Hibernate ORM è un framework open source di Object Relational Mapping. Una raccolta di librerie Java per mappare (per rendere persistenti) i dati dall’ambiente Java al database. Hibernate implementa le specifiche JPA (Java Persistence API) per la persistenza dei dati. Ereditarietà? L’ereditarietà dunque consente di far ereditare attributi e metodi … Leggi tutto

thread Java

Cos’è un thread: Un thread è un singolo flusso sequenziale di istruzioni all’interno di un programma. Come un flusso di controllo sequenziale, un thread deve ritagliarsi alcune delle sue risorse all’interno del programma in esecuzione. Esso deve quindi avere il suo stack di esecuzione e un program counter. Un thread è un singolo flusso sequenziale di istruzioni all’interno … Leggi tutto

Ordine dell’inizializzazione della classe Java

Ordine dell’inizializzazione della classe Java 1. Tutte le costanti, variabili e blocchi non statici. Nell’ordine  in cui appaiono nel codice. 2. Tutte le costanti, variabili e blocchi non statici. Nell’ordine  in cui appaiono nel codice. 3. Costruttore.

Interface Java

Interfacce, classi, e enums sono tutte  “types”. Java permette ad una classe di implementare multiple interfaces. In this way, Java supports multiple inheritance of types.”State”, on the other hand, is represented by instance fields. Solo le classi possono avere instance fields e dunque, solo le classi can have a state.Since a class is allowed to … Leggi tutto

Inversion of Control e Dependency Injection

Solitamente molti fanno confusione tra IOC e Dependency Injection. IOC, Inversion of Control, è un pattern tanto semplice quanto importante che, permette di disaccoppiare le dipendenze tra oggetti, rendendoli indipendenti, affinché sia possibile modificare una parte del software senza stravolgere le altre. Dependency Injection è un pattern che professa l’iniezione delle dipendenze, ottenendo quindi IOC … Leggi tutto

Polimorfismo Java

Polimorfismo Java: vantaggi: rende il codice più dinamico e  più riutilizzabile. Il polimofismo consente di prendere la decisione effettiva di quale metodo deve essere invocato in fase di esecuzione in base alla classe effettiva dell’oggetto. Questo è un binding dinamico e rende il codice più dinamico  

Abstract Class Java

Abstract Class in Java: deve avere la parola abstract deve avere almeno 1 metodo abstract i metodi abstract non hanno implementazione es: public abstract int getDailyRate();

Create Application CLI

Come creare un’applicazione java che funziona da terminale con Picocli library. Fonti: https://www.baeldung.com/java-picocli-create-command-line-program 1. Prima di cominciare: Creare progetto maven Aggiungere dependency picocli Creare una classe di esempio GitCommand implements Runnable con metodo main col quale fare partire l’app java e che stampi un messaggio dal metodo run()  La classe di esempio con il metodo … Leggi tutto

Optional Java

Java 8 Parte 1 – Optional e Interfacce Funzionali   Ad esempio, il seguente codice String str; if(str!=null){ //operazioni da eseguire } in Java 8 con l’uso di Optional diventa String str; Optional<String> optionalString = Optional.of(str); if(optionalString.isPresent()){ //operazioni da eseguire }

OCA – appunti generici brevi domande più frequen

Differenza pass by value  e by reference: Gli oggetti passati nei metodi vengono passati by reference e quindi gli effetti delle modifiche avvengono Note that Arrays are Objects (i.e. cA instanceof Object is true) so are effectively passed by reference I primitivi passati nei metodi invece si dice sono passati by value quindi a meno che non … Leggi tutto