Java (linguaggio di programmazione): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
FrescoBot (discussione | contributi)
m Bot: spazi attorno alle parentesi
SuperBot (discussione | contributi)
orfanizzazione disambigua using AWB
Riga 65:
{{vedi anche|Piattaforma Java}}
 
I programmi scritti in linguaggio Java, dopo una fase iniziale di [[compilatore|compilazione]] con ottenimento del cosiddetto [[bytecode]], sono destinati all'[[esecuzione (informatica)|esecuzione]] sulla [[piattaforma Java]] attraverso una fase di [[Interprete_Interprete (informatica)|interpretazione]] (per questo motivo il linguaggio Java è detto anche semi-interpretato) ad opera di una [[Java Virtual Machine]] e, a tempo di esecuzione, avranno accesso alle [[Application Programming Interface|API]] della [[#Librerie|libreria standard]]. Questi due passi forniscono un livello di astrazione che permette alle [[applicazione (informatica)|applicazioni]] di essere interamente [[#Portabilità|indipendenti dal sistema]] hardware su cui esse saranno eseguite.
 
Un'implementazione della piattaforma java è il [[Java Runtime Environment]] (JRE), necessario per l'esecuzione del programma compilato, mentre per lo sviluppo dei programmi in Java a partire dal codice sorgente è necessario il [[Java Development Kit]] (JDK) che include anche il JRE.
Riga 149:
</source>
 
Il metodo ''main'' affida la stampa del messaggio a un oggetto creato apposta per questo compito, su cui è invocato il metodo dinamico ''print'' definito prima del main assieme al ''[[Costruttore (informatica)|costruttore]]'' della classe ovvero quel particolare metodo (con ugual nome della classe) che serve per inizializzare l'attributo della classe ''toPrint'' dell'oggetto creato/istanziato nel main. I metodi definibili possono essere dichiarati ''privati'' (contrassegnati dalla parola chiave ''private'') se richiamabili solo all'interno della stessa classe oppure ''pubblici'' (contrassegnati dalla parola chiave ''public'') se richiamabili anche da altre classi, di tipo ''statico'' (contrassegnati dalla parola chiave ''static'') se invocabili liberamente all'interno della classe (ad es. su variabili globali), ''dinamici'' se invocabili su oggetti.
 
Scrivendo nuove classi che supportano l'operazione ''print'', si può adattare il programma per mostrare messaggi di tipi radicalmente diversi, lasciando il ''main'' pressoché immutato (basta cambiare la metà riga che segue il ''new''). Per esempio, si può considerare un messaggio la scritta in una [[finestra (informatica)|finestra]] che appare sullo schermo del computer in uso, oppure una stringa inviata su connessione di rete per apparire sulla finestra di un computer [[client]]. Oppure il programma può dialogare con l'utente sulla [[riga di comando]] o in una finestra (considerando il dialogo come un "messaggio interattivo").
Riga 165:
}
</source>
 
 
<source lang="Java">
Riga 349 ⟶ 348:
{{curiosità}}
*Sembra che il nome Oak derivi dal fatto che Gosling e i suoi colleghi, nel periodo in cui svilupparono il linguaggio, avessero avuto come unica compagnia quella di una quercia che si trovava proprio fuori la finestra dell'ufficio in cui lavoravano.
 
*Una leggenda metropolitana -mai confermata- vuole che il nome del linguaggio sia stato inteso, in un secondo momento e dagli stessi creatori, come acronimo per "''Just Another Vacuum Acronym''" ("''Soltanto un altro vuoto Acronimo''"), con riferimento ironico all'altissimo numero di abbreviazioni utilizzate in ambiente informatico.
 
*Dato che gli ideatori del linguaggio si trovavano spesso ad un caffè presso il quale discutevano del progetto, sembrerebbe che il linguaggio prese il nome e il simbolo da tale abitudine ([[Java (caffè)|Java]] è una qualità di caffè dell'[[Giava|omonima isola]] dell'[[Indonesia]]), tanto che il [[magic number]] che identifica un [[file]] di [[bytecode]] ottenuto dalla [[compilatore|compilazione]] di un file Java è <code>0xCAFEBABE</code>, che in [[Lingua inglese|inglese]] significa ragazza (babe) del caffè (cafe)<ref>[http://radio.weblogs.com/0100490/2003/01/28.html James Gosling private communication to Bill Bumgarner]</ref>.
 
*Il progetto [[Robocode]], facendo divertire, ha come scopo l'insegnamento del linguaggio Java attraverso la scrittura del codice di robot identici tra loro ma programmati diversamente, da far scontrare in un'arena virtuale.
 
Riga 367 ⟶ 363:
 
; Specifiche di linguaggio
Le diverse edizioni delle specifiche sono [http://docs.oracle.com/javase/specs/ accessibili sul sito della Oracle]. L'ultima edizione è la seguente:<br />
*{{Cita libro
|autore = James Gosling, Bill Joy, Guy Steele, Gilad Bracha, Alex Buckley
Riga 385 ⟶ 381:
|accesso = 28 agosto 2012
}}
 
 
; Testi di approfondimento
Riga 429 ⟶ 424:
{{Controllo di autorità}}
{{portale|informatica}}
 
[[Categoria:Linguaggio Java| ]]
 
{{Categorie qualità}}
 
[[Categoria:Linguaggio Java| ]]