SlideShare a Scribd company logo
Introduzione alla programmazione in Java
•Unità 1
a cura del Team Informatica OpenSource
Sito Web https://www.informaticaopensource.it
Edizione 2021
Concetti fondamentali
 Java è un linguaggio di programmazione orientato agli oggetti
 Java è multipiattaforma grazie all’ambiente JRE Java Runtime Enviroment
 Java è maturo è nato negli anni 90
 Java dispone di numerosi tools che agevolano lo sviluppo
Concetti Fondamentali
 Classe definizione
 Rappresentazione grafica di una classe con UML
 Componenti di una classe
 Istanza di classe
Definizione di classe
 La classe è una rappresentazione astratta di un oggetto della realtà da
rappresentare
 Una classe può essere rappresentata in UML
Esempio di classe
Componenti di una classe
 Attributi dati della classe
 Metodi implementazione degli algoritmi che realizzando l’accesso ai dati
della classe lettura/scrittura
 Modificatori
 public
 private
 protected
Modificatore Public/Private/Protected
 Public: Un membro di una classe o classe sarà accessibile da qualunque
classe in qualunque package
 Private: Un membro di una classe attributo e/o metodo è accessibile
solo dall’interno della classe nella quale è stato dichiarato
 Protected: Un membro sarà accessibile all’interno di un package o nelle
sottoclassi della classe ove è definito anche di un altri package
In UML + public - private #`protected
Modificatore di accesso di Default
•
•
• Se non indicato il membro della classe attributo o metodo sarà
accessibile da tutte le cfassi del package dove la classe è definita
•
• In UML la notazione è ~
Modificatore Static
• Un membro di una classe dichiarato con il modificatore static è condiviso
da tutte le istanze della classe.
 Non è necessario istanziare la classe per utilizzare il membro
 Se il membro è un metodo Ad esempio Math.sqrt(numero);
 Se il membro è una variabile il suo valore è condiviso da tutte le istanze
della classe
Superclasse e Sottoclasse
 E’ legato al concetto di Ereditarietà tipico della programmazione ad oggetti
 Una super classe generalizza delle sottoclassi condividendone il comportamento
delle sottoclassi
 Una sottoclasse specializza il concetto di una superclasse
 Nella sottoclasse i metodi e gli attributi privati non sono visibili
 La sottoclasse eredita i metodi della superclasse
In Java una sottoclasse si definisce ad esempio
class Impiegato extends Persona
Rappresentazione UML delle sottoclasse esempio
Figura
Rettangolo
Cerchio
Superclasse
Sottoclass
i
UML approssimato
Costruttore
 E’ il metodo che viene invocato nell’operazione di stanziamento della
classe non è obbligatorio
 Può servire per definire una funzione di servizio e/o di inizializzazione
dell’oggetto istanziato
 Il distruttore al contrario del C non esiste in Java in quanto la Garbage
Collection provvede ad eliminare gli oggetti che non sono più utilizzati
per liberare memora
Dichiarazione del costruttore
class frazione
{
int num;
int den;
public frazione(float a,float b)
{
num=a;
den=b;
}
public static void main(String args[])
{
frazione f;
f=new frazione(1,2);
}
Polimorfismo
 Overloading dei metodi
 dichiarare metodi con lo stesso nome ma con firme distinte
 Overriding dei metodi
 ridefinire i metodi della super classe
Deve possedere la stessa firma ovvero lo stesso
modificatore di accesso e valore di ritorno
Esempio di overloading
public class Prodotto {
private int id;
// ...
public Prodotto(int id, String desc)
{
// ...
}
public Prodotto(int id, String desc1, String desc2)
{ // ... }
public Prodotto(int id, String desc1, String desc2, String desc3)
{ // ... }
}
Introduzione alla programmazione in Java
•Fine Unità 1
•Grazie per l’attenzione
a cura del Team Informatica OpenSource

More Related Content

ODP
Programmazione in Java Lezione 1
PPSX
PPTX
Programmazione ad oggetti
PDF
Java OCA teoria 4
PPT
Programmazione ad oggetti
PPT
Programmazione ad oggetti
PPT
programmazione ad oggetti
PPT
Programmaoggetti[1]
Programmazione in Java Lezione 1
Programmazione ad oggetti
Java OCA teoria 4
Programmazione ad oggetti
Programmazione ad oggetti
programmazione ad oggetti
Programmaoggetti[1]

What's hot (20)

PPTX
C#, imparare a programmare e sopravvivere
PDF
OOP with C#
PDF
Lezione 10 - Programmazione Ad Oggetti, Vb Accenni
PDF
Corso Java 1 - BASE
PPTX
Corso c# - Dalle basi del linguaggio alla creazione di un'applicazione uwp
PDF
C# Language Evolution
PPT
Presentazione primi principi oop
PPT
PPT
Corso ABAP OO 02
PPT
Corso ABAP OO 03
PPT
Corso ABAP OO 04
PPTX
Corso pratico di C# - 2013
PPTX
Object Oriented with Java Programmazione Base
PDF
Java SE 5. Capitolo 01: Base
ODP
Design Pattern
PPTX
Lezione 10 - Programmazione ad oggetti
PDF
Java OCA teoria 1
PPT
Java lezione 4
PDF
Dai delegati a LINQ con C#
PDF
C# e la Framework Class Library
C#, imparare a programmare e sopravvivere
OOP with C#
Lezione 10 - Programmazione Ad Oggetti, Vb Accenni
Corso Java 1 - BASE
Corso c# - Dalle basi del linguaggio alla creazione di un'applicazione uwp
C# Language Evolution
Presentazione primi principi oop
Corso ABAP OO 02
Corso ABAP OO 03
Corso ABAP OO 04
Corso pratico di C# - 2013
Object Oriented with Java Programmazione Base
Java SE 5. Capitolo 01: Base
Design Pattern
Lezione 10 - Programmazione ad oggetti
Java OCA teoria 1
Java lezione 4
Dai delegati a LINQ con C#
C# e la Framework Class Library
Ad

Similar to Linguaggio Java - Classi e Oggetti (20)

PDF
Lezione02
PDF
Lezione02
PDF
(E book ita) java introduzione alla programmazione orientata ad oggetti in ...
PDF
lezione1.pdf
PPT
Object oriented programming
ODP
Java 01
PDF
Object Oriented Programming
PPT
Corso java base
PDF
Corso Object Oriented Analysis and Design
PDF
Lezione01
PDF
Lezione01
PPT
Programmazione a oggetti tramite la macchina del caffé (pt. 2)
PPT
Pensiero Orientato Agli Oggetti
PDF
Corso Programmazione Java Base
PPT
Programmazione a oggetti tramite la macchina del caffé (pt. 3)
PPT
Presentazione principi oop
PDF
Corso Unified Modeling Language (UML)
PPT
Object oriented
PPT
Java codestyle & tipstricks
Lezione02
Lezione02
(E book ita) java introduzione alla programmazione orientata ad oggetti in ...
lezione1.pdf
Object oriented programming
Java 01
Object Oriented Programming
Corso java base
Corso Object Oriented Analysis and Design
Lezione01
Lezione01
Programmazione a oggetti tramite la macchina del caffé (pt. 2)
Pensiero Orientato Agli Oggetti
Corso Programmazione Java Base
Programmazione a oggetti tramite la macchina del caffé (pt. 3)
Presentazione principi oop
Corso Unified Modeling Language (UML)
Object oriented
Java codestyle & tipstricks
Ad

More from I.S.I.S. "Antonio Serra" - Napoli (20)

PPTX
La scomposizione in sotto programmi in C++.pptx
PPTX
Linguaggio C++ - Basi
PPTX
La metodologia Top - Down - applicazione al C++
PPTX
PPTX
PDF
I sotto programmi in Python 3
PDF
Le basi di Pytthon 3 - Fondamenti n.1
PPTX
Nuova ECLD - Modulo Online Collaboration n.2
PPT
Nuova ECDL - Modulo Online Essentials n.2
PPT
Nuova ECDL - Modulo Online Essentials n.2
PPTX
Nuova ECDL - Modulo Presentation n.3
PPTX
Nuova ECDL - Modulo Presentation n.2
PPT
Nuova ECDL - Word Processing
PPT
Nuova ECDL - Word Processing n.2
PPT
Nuova ECDL - Word Processing n.1
PPTX
Computer Essentials n.3 - Edizione 2020
ODP
primi comandi SQL con Mysql
PPTX
Le Applicazioni di Internet Web, FTP, Posta e App pr il Mobile
ODP
Programmazione Top Down in C++
La scomposizione in sotto programmi in C++.pptx
Linguaggio C++ - Basi
La metodologia Top - Down - applicazione al C++
I sotto programmi in Python 3
Le basi di Pytthon 3 - Fondamenti n.1
Nuova ECLD - Modulo Online Collaboration n.2
Nuova ECDL - Modulo Online Essentials n.2
Nuova ECDL - Modulo Online Essentials n.2
Nuova ECDL - Modulo Presentation n.3
Nuova ECDL - Modulo Presentation n.2
Nuova ECDL - Word Processing
Nuova ECDL - Word Processing n.2
Nuova ECDL - Word Processing n.1
Computer Essentials n.3 - Edizione 2020
primi comandi SQL con Mysql
Le Applicazioni di Internet Web, FTP, Posta e App pr il Mobile
Programmazione Top Down in C++

Recently uploaded (9)

PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG UNIT - TIẾNG ANH 10 FRIENDS GLOBAL - CẢ NĂM (24...
PDF
GIÁO ÁN KẾ HOẠCH BÀI DẠY CHÍNH KHÓA TIẾNG ANH 9 - CẢ NĂM - THEO CÔNG VĂN 5512...
PDF
16 CHUYÊN ĐỀ BÀI TẬP ÔN THI TUYỂN SINH VÀO 10 - MÔN TIẾNG ANH - THEO FORM ĐỀ ...
PPTX
Copia di PROGETTO VIOLENZA sulle donne PCTO
PDF
GIÁO ÁN CHÍNH KHÓA TIẾNG ANH 9 - CẢ NĂM - THEO CÔNG VĂN 5512 (2 CỘT) NĂM HỌC ...
PDF
CHUYÊN ĐỀ BỔ TRỢ NGỮ ÂM, TỪ VỰNG NÂNG CAO - TIẾNG ANH 9 VÀ ÔN THI VÀO LỚP 10 ...
PDF
Mazzoni-Reggi-2012-Effetto-Lucifero-Su-Wikipedia.pdf
PPTX
SLIDE-DE-CURSOS-OssssFICIAL-DA-EGEPI-.pptx
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG UNIT - TIẾNG ANH 10 EXPLORE NEW WORLDS - CẢ NĂM...
BÀI TẬP TEST BỔ TRỢ THEO TỪNG UNIT - TIẾNG ANH 10 FRIENDS GLOBAL - CẢ NĂM (24...
GIÁO ÁN KẾ HOẠCH BÀI DẠY CHÍNH KHÓA TIẾNG ANH 9 - CẢ NĂM - THEO CÔNG VĂN 5512...
16 CHUYÊN ĐỀ BÀI TẬP ÔN THI TUYỂN SINH VÀO 10 - MÔN TIẾNG ANH - THEO FORM ĐỀ ...
Copia di PROGETTO VIOLENZA sulle donne PCTO
GIÁO ÁN CHÍNH KHÓA TIẾNG ANH 9 - CẢ NĂM - THEO CÔNG VĂN 5512 (2 CỘT) NĂM HỌC ...
CHUYÊN ĐỀ BỔ TRỢ NGỮ ÂM, TỪ VỰNG NÂNG CAO - TIẾNG ANH 9 VÀ ÔN THI VÀO LỚP 10 ...
Mazzoni-Reggi-2012-Effetto-Lucifero-Su-Wikipedia.pdf
SLIDE-DE-CURSOS-OssssFICIAL-DA-EGEPI-.pptx
BÀI TẬP TEST BỔ TRỢ THEO TỪNG UNIT - TIẾNG ANH 10 EXPLORE NEW WORLDS - CẢ NĂM...

Linguaggio Java - Classi e Oggetti

  • 1. Introduzione alla programmazione in Java •Unità 1 a cura del Team Informatica OpenSource Sito Web https://www.informaticaopensource.it Edizione 2021
  • 2. Concetti fondamentali  Java è un linguaggio di programmazione orientato agli oggetti  Java è multipiattaforma grazie all’ambiente JRE Java Runtime Enviroment  Java è maturo è nato negli anni 90  Java dispone di numerosi tools che agevolano lo sviluppo
  • 3. Concetti Fondamentali  Classe definizione  Rappresentazione grafica di una classe con UML  Componenti di una classe  Istanza di classe
  • 4. Definizione di classe  La classe è una rappresentazione astratta di un oggetto della realtà da rappresentare  Una classe può essere rappresentata in UML
  • 6. Componenti di una classe  Attributi dati della classe  Metodi implementazione degli algoritmi che realizzando l’accesso ai dati della classe lettura/scrittura  Modificatori  public  private  protected
  • 7. Modificatore Public/Private/Protected  Public: Un membro di una classe o classe sarà accessibile da qualunque classe in qualunque package  Private: Un membro di una classe attributo e/o metodo è accessibile solo dall’interno della classe nella quale è stato dichiarato  Protected: Un membro sarà accessibile all’interno di un package o nelle sottoclassi della classe ove è definito anche di un altri package In UML + public - private #`protected
  • 8. Modificatore di accesso di Default • • • Se non indicato il membro della classe attributo o metodo sarà accessibile da tutte le cfassi del package dove la classe è definita • • In UML la notazione è ~
  • 9. Modificatore Static • Un membro di una classe dichiarato con il modificatore static è condiviso da tutte le istanze della classe.  Non è necessario istanziare la classe per utilizzare il membro  Se il membro è un metodo Ad esempio Math.sqrt(numero);  Se il membro è una variabile il suo valore è condiviso da tutte le istanze della classe
  • 10. Superclasse e Sottoclasse  E’ legato al concetto di Ereditarietà tipico della programmazione ad oggetti  Una super classe generalizza delle sottoclassi condividendone il comportamento delle sottoclassi  Una sottoclasse specializza il concetto di una superclasse  Nella sottoclasse i metodi e gli attributi privati non sono visibili  La sottoclasse eredita i metodi della superclasse In Java una sottoclasse si definisce ad esempio class Impiegato extends Persona
  • 11. Rappresentazione UML delle sottoclasse esempio Figura Rettangolo Cerchio Superclasse Sottoclass i UML approssimato
  • 12. Costruttore  E’ il metodo che viene invocato nell’operazione di stanziamento della classe non è obbligatorio  Può servire per definire una funzione di servizio e/o di inizializzazione dell’oggetto istanziato  Il distruttore al contrario del C non esiste in Java in quanto la Garbage Collection provvede ad eliminare gli oggetti che non sono più utilizzati per liberare memora
  • 13. Dichiarazione del costruttore class frazione { int num; int den; public frazione(float a,float b) { num=a; den=b; } public static void main(String args[]) { frazione f; f=new frazione(1,2); }
  • 14. Polimorfismo  Overloading dei metodi  dichiarare metodi con lo stesso nome ma con firme distinte  Overriding dei metodi  ridefinire i metodi della super classe Deve possedere la stessa firma ovvero lo stesso modificatore di accesso e valore di ritorno
  • 15. Esempio di overloading public class Prodotto { private int id; // ... public Prodotto(int id, String desc) { // ... } public Prodotto(int id, String desc1, String desc2) { // ... } public Prodotto(int id, String desc1, String desc2, String desc3) { // ... } }
  • 16. Introduzione alla programmazione in Java •Fine Unità 1 •Grazie per l’attenzione a cura del Team Informatica OpenSource