Estratto del documento

Javacorso di base

Sommario

  • Introduzione
  • Operatori
  • Array
  • Java Virtual Machine (JVM)
  • Gestione degli input
  • IDE e strumenti di sviluppo
  • Strutture di controllo
  • Variabili
  • Casting
  • Output e commenti
  • Metodi
  • Tipi di dati
  • Enumerazioni

Diffuso in tutti gli ambiti dell'informatica, Java nasce nel 1995 per mano di James Gosling ed è uno dei linguaggi di programmazione più utilizzati al mondo.

Caratteristiche principali

Introduzione

  • General purpose (a scopo generico)
  • Linguaggio di alto livello
  • Multipiattaforma
  • Orientato agli oggetti (OO)
  • Tipizzato staticamente
  • Sicuro e robusto
  • Riusabilità del codice
  • Compilato e poi interpretato

Un linguaggio si definisce di alto livello quando la sua sintassi è più simile al linguaggio naturale e quindi più intuitiva e semplice da ricordare rispetto a un linguaggio di basso livello, inoltre avviene un’astrazione dalle caratteristiche fisiche della macchina. Un linguaggio a basso livello, invece, utilizza una sintassi più legata al funzionamento fisico del calcolatore e quindi si avvicina al linguaggio macchina e il codice sarà molto più prolisso e complicato per il programmatore.

Java, PHP, Python sono esempi di linguaggi di programmazione ad alto livello. Assembly, invece, è un esempio di linguaggio a basso livello.

Linguaggio multipiattaforma

Java è un linguaggio multiplatform (multipiattaforma), quindi:

  • È indipendente dalle caratteristiche fisiche della macchina su cui il programma viene eseguito;
  • È un linguaggio molto flessibile in quanto può essere eseguito ovunque grazie alla JVM (Java Virtual Machine).

Nota: il motto di Java è “Write once, run everywhere”.

Linguaggio orientato agli oggetti

Un linguaggio di programmazione si dice OO (Object Oriented) ovvero “orientato agli oggetti” quando ci consente di modellare il nostro software in modo modulare e chiaro attraverso l’utilizzo di classi e oggetti che possono comunicare tra di loro in qualunque contesto si desideri (come per esempio in ambito grafico). Classi e oggetti rappresentano i concetti della nostra realtà che intendiamo informatizzare.

La programmazione OO, anche detta OOP, è un vero e proprio paradigma di programmazione molto diffuso attualmente. Esempi di linguaggi orientati agli oggetti sono Java, C, C++, e tanti altri.

Linguaggio tipizzato staticamente

Quando utilizziamo dei dati in Java dobbiamo definire all’interno del codice sorgente, prima di eseguire il programma, di che tipo sono. Questa caratteristica è nota come tipizzazione statica, perché la definizione del tipo dei dati avviene staticamente quando scriviamo il codice.

Linguaggi tipizzati staticamente sono ad esempio Java, C, C++, mentre esempi di linguaggi tipizzati dinamicamente (runtime) sono PHP, Python, Java.

Linguaggio sicuro e robusto

Java è un linguaggio nato per garantire anche la sicurezza dei dati e la robustezza del codice. Infatti, attraverso tecniche come l’incapsulamento dei dati, abbiamo a disposizione tutti gli strumenti necessari alla protezione dei dati.

Riusabilità del codice

Uno dei grandi vantaggi offerti da Java è la riusabilità del codice, che implica un certo grado di semplificazione dello sviluppo del software oltre che una riduzione dei tempi di lavoro necessari al suo completamento (minore effort).

Linguaggio compilato e interpretato

Un linguaggio è compilato quando un software noto come compilatore traduce tutte le sue istruzioni in linguaggio macchina comprensibile direttamente dal computer. Un esempio di linguaggio compilato è C++. La compilazione richiede un po’ di tempo ma una volta generato il programma compilato verrà eseguito con rapidità dal computer.

Un linguaggio è interpretato quando un software noto come interprete traduce le sue istruzioni eseguendole una alla volta in tempo reale senza creare un programma eseguibile. Un esempio di linguaggio interpretato è Visual Basic Script. L’interpretazione non richiede tempi di attesa iniziali ma eseguendo un’istruzione alla volta rende il programma tendenzialmente più lento.

Java è sia un linguaggio che viene prima compilato in “bytecode” (quasi linguaggio macchina) e poi interpretato dalla Java Virtual Machine indipendentemente dal sistema operativo in uso. Ricorda: Java è un linguaggio multipiattaforma.

Java Virtual Machine (JVM)

La JVM è il software che si occupa di eseguire il codice Java interpretando il bytecode generato dalla compilazione. Per eseguire un programma Java, in sintesi, i passaggi sono:

  • Scrivere il codice sorgente Java con un IDE adatto (come Eclipse);
  • Il compilatore genera un bytecode simile al linguaggio macchina;
  • La JVM interpreta il bytecode eseguendo il programma.

IDE e strumenti di sviluppo

Per sviluppare software in Java abbiamo bisogno di installare sul pc:

  • Java dal sito ufficiale java.com;
  • Un JDK (Java Development Kit): insieme dei componenti principali per sviluppare ed eseguire programmi Java (di solito viene fornita con JVM, librerie varie ecc);
  • Un IDE (ambiente di sviluppo integrato).

Teoricamente è possibile scrivere codice Java utilizzando qualsiasi editor di testo. Se vogliamo però scrivere applicazioni un po’ più complesse ci vengono in aiuto software che ci facilitano la programmazione (suggerendoci ad esempio keywords native del linguaggio) detti IDE. Tra gli IDE più diffusi per programmare con Java ci sono Eclipse e NetBeans, entrambi disponibili gratuitamente sui rispettivi siti ufficiali.

Creiamo il nostro primo programma Java

    public class HelloWorld {
        public static void main(String[] args) {
            // Stampa "Hello, World" a video
            System.out.println("Hello, World");
        }
    }

Variabili

Le variabili sono contenitori che consentono la memorizzazione di valori. Il valore di una variabile, come suggerisce il termine, può variare durante l’esecuzione del programma. Per dichiarare una variabile in Java definiamo: tipo_dato nome_variabile; Esempio: int x;

Per inizializzarla, ovvero assegnarle un valore oltre a dichiararla, possiamo procedere come segue: tipo_dato nome_variabile = valore; Esempio: int x = 10;

Java è case sensitive, ovvero distingue i caratteri minuscoli e maiuscoli. Quindi, se chiamiamo due variabili rispettivamente “cognome” e “Cognome”, Java le tratterà come due variabili diverse.

Operatore di assegnazione

In Java, il segno uguale è chiamato “operatore di assegnazione”, in quanto ci permette di assegnare un valore ad una variabile. Ad esempio, x = 10 assegnerà il valore 10 alla variabile di nome x. Una variabile può essere dichiarata anche senza essere inizializzata, ossia non è necessario assegnare un valore iniziale ad una variabile (in questo caso avrà valore undefined). Spesso, infatti, il valore che verrà assegnato alla variabile sarà il risultato di calcoli e operazioni svolte run-time.

Un classico esempio di utilizzo di una variabile è la stampa a video (output sul browser). Per fare ciò, ad esempio, possiamo scrivere:

    int x = 10;
    System.out.println(x);

Quando modifichiamo il valore di una variabile, esso risulterà aggiornato automaticamente da qualunque posto utilizziamo la variabile.

Statements

Ogni istruzione in Java è detta Statement. Ogni istruzione termina con un punto e virgola (semicolon). Infatti, la dichiarazione e l’inizializzazione di una variabile sono considerati statement:

    String nome = “Pippo”;
    int x = 10;

La direttiva import

Prima della dichiarazione di una classe, è possibile scrivere particolari istruzioni note come direttive. Una delle direttive più diffuse è la import che, come suggerisce il nome, permette di importare classi Java nel nostro progetto o, nel caso in cui si scriva *, tutte le classi di un determinato package. La sintassi è la seguente:

    import percorso_completo_classe_package;
    Esempio: import java.io.*;

Package e classi

Una classe è una struttura dati che rappresenta un’entità avente proprie caratteristiche (attributi) e comportamenti (metodi). Un package è un gruppo di classi correlate logicamente tra di loro. Per utilizzare un package esterno nel nostro progetto dobbiamo importarlo con la direttiva import seguita dal nome completo del package.

Il linguaggio Java offre già molti package liberamente utilizzabili per eseguire le operazioni di base come lettura e scrittura dati.

Esempio di package: java.io.* (per le operazioni di I/O ossia input/output) Esempio di importazione package:

    import java.io.*;

Oggetti

Un oggetto software è un’istanza di una classe, ossia è un’entità che ha delle proprie caratteristiche (attributi) e dei propri comportamenti (metodi) che sono però riconducibili ad una particolare categoria di entità: l’oggetto viene appunto “classificato”. Ad esempio, una Ford Fiesta e una Fiat Panda, hanno un loro colore, cilindrata, motore, velocità massima diversa ma sono entrambe classificabili come automobili, quindi sono oggetti della classe Automobile in quanto sono istanze di essa seppur con diversi valori assunti dai loro attributi. Il concetto di oggetto software è alla base della programmazione orientata agli oggetti (OOP), che approfondiremo in dettaglio nel Corso 2.

Convenzioni per i nomi delle variabili

  • Solitamente il nome delle variabili viene scritto in minuscolo e, nel caso di doppie parole, la seconda parola inizia con la lettera capitalizzata (es. nomeCognome);
  • I nomi delle variabili non possono includere operatori matematici o logici (es. nome+cognome);
  • I nomi delle variabili non possono contenere spazi;
  • I nomi delle variabili non possono essere parole riservate (keyword native di Java).

Le parole riservate in Java

  • Abstract
  • Continue
  • For
  • New
  • Switch
  • Assert
  • Default
  • Goto
  • Package
  • Synchronized
  • Boolean
  • Do
  • If
  • Private
  • This
  • Break
  • Double
  • Implements
  • Protected
  • Throw
  • Byte
  • Else
  • Import
  • Public
  • Throws
  • Case
  • Enum
  • Instanceof
Anteprima
Vedrai una selezione di 26 pagine su 124
Java: concetti essenziali Pag. 1 Java: concetti essenziali Pag. 2
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 6
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 11
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 16
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 21
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 26
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 31
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 36
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 41
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 46
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 51
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 56
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 61
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 66
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 71
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 76
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 81
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 86
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 91
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 96
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 101
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 106
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 111
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 116
Anteprima di 26 pagg. su 124.
Scarica il documento per vederlo tutto.
Java: concetti essenziali Pag. 121
1 su 124
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher patrizio_riccardi di informazioni apprese con la frequenza delle lezioni di Tecniche di programmazione e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Trieste o del prof Logar Alessandro.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community