Java

Java nasce per creare un linguaggio orientato agli oggetti, semplice nella scrittura e la gestione del codice e non legato ad una architettura ben precisa.

La gestione della memoria non è più a carico del programmatore ma “gargbage collection” si occupa di assegnare e rilasciare la memoria a seconda delle esigenze del programma. I programmi vengono compilati in un codice intermedio “bytecode” che viene interpretato nella macchina dalla JVM (Java Virtual Machine).

La prima versione 1.0 pubblicata nel 1995 comprendeva oltre all’ambiente di esecuzione JRE (Java Runtime Environment jvm e librerie) anche il compilatore e i tool di sviluppo.

La versione 1.2, chiamata java2, comprendeva J2EE (Java 2 Enterprise Edition) e J2ME (Java 2 Micro Edition) destinata ai dispositivi mobile ed embedded. L’ultima versione Java 11 è stata pubblicata a Settembre 2018.

Java è un linguaggio Object Oriented, significa che definisce degli oggetti (class) che interagiscono fra di loro; ogni oggetto comprende la struttura dei dati (fileds ) e le procedure (methods) che li utilizzano.

Possiamo definire:

  • classe – una collezione di uno o più oggetti;
  • oggetto – lo stato il comportamento e le entità;

Qualificatori di visibilità

Servono per determinare la visibilità degli elementi:

  • private – visibile solo all’interno della classe che lo contiene;
  • public – visibile anche dall’esterno della classe che lo contiene;
  • protected – visibile sollo dalle classi derivate;
  • default – se non viene specificata, visibile da tutte le classi che si trovano all’interno del medesimo package;

Costruttore

Crea nuove istanze di elementi di quella classe; all’interno la keyword this rappresenta l’istanza corrente.

Ereditarietà

Possiamo estendere una classe senza doverne riscrive il codice ma solo l’aggiunta delle nuove funzionalità. Il metodo overloaded invece ci permette di riscrivere un metodo più volte ma con argomenti diversi, il compilatore capirà quale chiamare in base agli argomenti che gli vengono passati.

Package

Serve a organizzare classi in gruppi logici. Java possiede numerose librerie organizzate in diversi package, i principali sono:

  • java.io – classi per l’input/output;
  • java.awt – classi per interfacce grafiche (non usata);
  • java.net – classi per connessioni tipo Socket;
  • java.applet – classe per realizzare applet (deprecata);
  • java.util – classi di utilità;
  • java.lang – classi principali del linguaggio;

Esistono alcune convenzione per i nomi:

  • classi – inizia sempre con una lettera maiuscola, se composto da più parole tutte devono iniziare in maiuscolo;
    ElencoNomiAlunni
  • variabili, metodi – inizia sempre con una lettera minuscola;
    elencoNomiAlunni
  • costanti – tutte le lettere devono essere in maiuscolo e separate da underscore;
    ELENCO_NOMI_ALUNNI
  • package – hanno solo lettere maiuscole, se formate da parole composte bisogna creare package innestati;
    elenco.nomi.alunni
Follow by Email
Facebook
Twitter
Telegram