Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Fondamenti di Java: Ereditariet 00e0, Polimorfismo e Incapsulamento, Schemi e mappe concettuali di Informatica

Una panoramica dei concetti fondamentali di java, inclusi i modificatori di accesso, i principi di ereditariet 00e0, polimorfismo e incapsulamento. Esplora anche i tipi primitivi e wrapper, le java collection come arraylist, e le differenze tra array e arraylist. Vengono introdotti concetti come interfacce, classi astratte, metodi astratti e la gestione delle eccezioni con blocchi try-catch. Inoltre, il documento tratta argomenti avanzati come java ee, mvc, jpa, dao e l'uso di framework come spring, spiegando i bean e la beanfactory. Infine, vengono accennati bson, github e l'importanza di hibernate per la persistenza dei dati nei database. Il documento si conclude con una breve introduzione a swagger per la documentazione dei microservizi e una panoramica dei database relazionali e nosql. Questo documento 00e8 utile per studenti universitari e sviluppatori che desiderano approfondire la conoscenza di java e delle sue applicazioni nel mondo enterprise.

Tipologia: Schemi e mappe concettuali

2023/2024

Caricato il 20/06/2025

felice-marano-3
felice-marano-3 🇮🇹

1 documento

1 / 12

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Java
Comandi utili
📕
.
Fondamenti di Java
Java
JDK
JVM
JRE
Cosʼè una classe?
Modificatori di accesso
Ereditarietà
Polimorfismo
Incapsulamento
Tipi primitivi e wrapper
Java collection
Array vs Arraylist
Interfacce
Cosʼè una classe astratta?
Metodi astratti
Le eccezioni
Cosʼè una map?
Cosʼè una Generics?
Java
1
pf3
pf4
pf5
pf8
pf9
pfa

Anteprima parziale del testo

Scarica Fondamenti di Java: Ereditariet 00e0, Polimorfismo e Incapsulamento e più Schemi e mappe concettuali in PDF di Informatica solo su Docsity!

Java

Comandi utili 📕.

Fondamenti di Java Java JDK JVM JRE Cosʼè una classe? Modificatori di accesso I 3 fondamenti di java Ereditarietà Polimorfismo Incapsulamento Tipi primitivi e wrapper Java collection Array vs Arraylist Interfacce Cosʼè una classe astratta? Metodi astratti Le eccezioni Cosʼè una map? Cosʼè una Generics?

Fondamenti di Java

Java

Java è un linguaggio Objected Oriented (programmazione ad oggetti oppure oop), la differenza dai linguaggi di programmazione procedurali e la presenza di classi, attributi e metodi.

JDK

Tutto si basa sulla JDK, un kit presente in java scaricabile diviso per versioni, e al suo interno sono presenti:

JVM Java Virtual Machine JRE Java Runtime Environment

JVM

Java EE Cosʼè la MVC? Cosʼè una JSP? Comandi query Cosʼè il JDBC? Cosʼè una JPA? Cosʼè il DAO? Spring Cosʼè un Bean? Cosʼè un BeanFactory? Cosʼè un Bson? Cosʼè lʼIoC? Coʼè lʼAOP Hibernate Annotation di Hibernate DataBase Cosʼè lo swagger? Github

Protected: il codice è accessibile alle classi e alle sottoclassi appartenenti allo stesso package Default: compie la stessa funzione di protected, solo che viene utilizzato automaticamente quando non si specifica quale modificatore utilizzare

I 3 fondamenti di java

Java si basa su tre fondami principali:

Lʼereditarietà Il polimorfismo Lʼincapsulamento (information hiding)

Ereditarietà

Lʼereditarietà è quella funzionalità che ci permette di ereditare da una classe padre ad una classe figlio metodi e attributi

N.B  Java NON ha il multi-ereditarietà, ciò significa che una classe può estendere SOLO unʼaltra classe

Class Animale extends Cane {}

Polimorfismo

Per polimorfismo possiamo riconoscerne di due tipi:

Polimorfismo alle classe: permette ad una classe di oter. contenere un riferimento di un oggetto, stanziamo lʼoggetto “aˮ della classe A con le proprietà della classe B

A a = new B

Polimorfismo dei metodi: si ottiene utilizzando overloading e override: Overload (sovraccaricare): si basa sulla scrittura di più metodi dallo stesso nome ma con parametri diversi

Override (sovrascrivere): si basa sulla riscrittura di un certo metodo di una classe che abbiamo ereditato

Incapsulamento

(information hiding): con lʼincapsulamento possiamo proteggere il codice con il modificatore di accesso private; possiamo utilizzarlo quando creiamo una classe UtilitaDipedente con attributi privati.

Per poter richiamare gli attributi messi privati dobbiamo utilizzare due metodi importanti come il Setter e il Getter che servono per: Setter: assegnano il valore ad un oggetto; Get: serve per poter leggere un valore.

Tipi primitivi e wrapper

In ogni classe o in ogni metodo generico sono presenti dei dati, questi ultimi possono essere di tipo primitivo e wrapper, in totale sono 8

Primitivi Wrapper int Integer char Character double float boolean

Java collection

Esistono anche Collection che sono un set di classi ed interfacce che forniscono una struttura per potere memorizzare e manipolare gli oggetti; un esempio di Collection può essere lʼ ArrayList

Array vs Arraylist

allʼinterno del Try definiamo il blocco di codice da testare, invece nel catch definiamo il blocco di codice che verrà eseguito nel caso in cui, allʼinterno del try , si verifichi un errore

possiamo trovare allʼinterno del blocco Try-Catch la parola finally che permette di eseguire il codice indipendentemente dal risultato che daranno il blocco del try- catch.

Cosʼè una map?

Possiamo trovare anche delle interfacce utilizzate per memorizzare e mappare i dati in coppia-valore, per fare ciò utilizziamo lʼ hashmap che è una classe dʼimplementazione dellʼinterfacce map:

Map Integer, String> map = new Hashmap<>();

Integer → è la chiave String → è il valore

Cosʼè una Generics?

Esistono unʼinsieme di funzionalità che ci consentono di scrivere codice indipendentemente dal tipo di dato che daremo:

private T contenuto;

Java EE

Con Java Enterprise possiamo procedere con lo sviluppo di web Application grazie allʼimplementazione delle Servlet

Una servlet fa da tramite tra front-end e back-end gestendo appunto le request/response.

Una servlet contiene due metodi fondamentali:

doGet() → che gestisce la chiamate di tipo Get, che gestiscono le request con i parametri in chiaro passati nellʼurl doPost → che gestiscono le chiamate di tipo Post, dove i parametri non sono in chiaro poiché non vengono passati in url

Cosʼè la MVC?

Con le servlet si aggiunge anche il modello MVC

Model → che rappresenta lʼinsieme delle classi Java View → dove al suo interno, inseriamo la parte grafica, ovvero le JSP Controller → dove al suo interno troviamo le servlet

Cosʼè una JSP?

Capiamo che una JSP Java Server Page), è una pagina HTML che viene eseguito su un server, ed ha la possibilità di includere allʼinterno del codice HTML implementare un codice Java:

Html> % testo java %

Comandi query

Per eseguire una query attraverso una servlet, occorre utilizzare una delle seguenti istruzioni:

Execute() → esegue la query in un oggetto PreparedStatement; ExecuteQuery() → viene utilzzato quando si deve eseguire una query che un valore di ritorno ExecuteUpdate() → viene utilizzato quando si deve eseguire una query che nonn ha nessun valore di ritorno

è un oggetto che viene stanziato e gestito da un container Spring IoC

Cosʼè un BeanFactory?

Questo rappresenta la forma più semplice di IoC Container e ha il compito di:

Creare i bean necessari allʼapplicazione Inizializzare le loro dipendenze attraverso lʼutilizzo dellʼinjection

Cosʼè un Bson?

A differenza di un Json, occupa meno spazio di archiviazione ed e più veloce

Cosʼè lʼIoC?

Permette allo sviluppatore, un vantaggio: facendo in modo che non sia più lo sviluppatore a dover inizializzare, creare e richiamare metodi degli oggetti ma ci pensa autonomamente il framework a farlo

Questo vantaggio offerto dallʼIoC è gestito tramite delle librerie, precisamenre:

Maven → è un tool che è in grado di gestire e scaricare le dipendenza di cui abbiamo bisogno. Pom.xml → le dipendenze delle librerie vengono salvate allʼinterno del file pom

Coʼè lʼAOP

è un paradigma di programmazione che integra la programmazione orientata agli oggetti fornendo un altro modo di pensare alla struttura del programma.

LʼAOP è quello di separare funzionalità trasversali allʼapplicazione della logica di business, con questa tecnica permettiamo di non sporcare il codice principale

Hibernate

è una piattaforma middleware, che si frappone tra le due tecnologie: Java e Database.

Hibernate in questo caso consente di mappare le entità presenti tra queste due tecnologie.

Annotation di Hibernate

le principali annotation utilizzate da Hibernate sono:

@ Entity → rappresenta le entità del db e specifica quale classe deve essere collegato al DataBase Table → consente di specificare i dettagli della tabella che verrà utilizzata per rendere persistente lʼentity del DataBase Column → specifica la mappatura delle colonne @id → annota la chiave primaria GeneretedValue → genere i valori della chiave primaria

DataBase

Una base di dati indica una collezione di dati che vengono utilizzati per rappresentare una porzione del mondo reale.

La differenza principale tra i DataBase relazionale e un DataBase NoSQL

DataBase relazionale → vengono salvati allʼinterno di una tabella, composta da colonne e righe DataBase NoSQL  non abbiamo le tabelle ma le Collection, quindi unʼinsieme di documenti scritti come coppia di chiave:valore

Cosʼè lo swagger?

E un framework open source utilizzato per generare la documentazione per i micro-servizi

Github

è un sistema di versionamento del codice, capace di suddividere il progetto in più branch, su ogni branch è presente una versione diversa del progetto e ogni utente