Java/Classi e oggetti: differenze tra le versioni

Wikibooks, manuali e libri di testo liberi.
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Riga 26: Riga 26:
<references/>
<references/>


{{Avanzamento|50%|5 maggio 2008}}


[[Categoria:Java|Classi]]
[[Categoria:Java|Classi]]

{{Avanzamento|50%|5 maggio 2008}}
[[de:Java Standard: Class]]
[[en:Java Programming/Classes, Objects and Types]]
[[es:Programación en Java/Clases]]
[[fr:Programmation Java/Les classes en Java]]
[[nl:Programmeren in Java/Klassen]]
[[pt:Java/Introdução às classes]]

Versione delle 22:13, 13 nov 2011

Java

Linguaggio Java
Linguaggio Java

categoria · sviluppo · modifica
Come posso contribuire?

→ Vai su Wikiversity

Java:  Guida alla programmazione - Specifica di linguaggioJava/Tipi di dato - Libreria standardJava/Comunicazione seriale


Introduzione:     IntroduzioneJava/Introduzione   •   Procurarsi il JDKJava/Procurarsi il JDK
Il linguaggio:     Dal sorgente all'esecuzioneJava/Dal sorgente all'esecuzione   •   Il linguaggioJava/Il linguaggio   •   Programmazione ad oggettiJava/Programmazione ad oggetti
Aspetti avanzati:     Thread e parallelismoJava/Multithreading   •   Interblocco ricontrollatoJava/Interblocco ricontrollato   •   JavadocJava/Javadoc
Appendici:     EserciziJava/Esercizi   •   La macchina virtualeJava/La macchina virtuale   •   Errori e mitiJava/Errori e mitiTrucchi e consigliJava/Trucchi e consigli


Introduzione

Ogni oggetto dovrebbe rappresentare un elemento della vita reale e gli aspetti che lo identificano sono raggruppati insieme in un unico punto del programma, cioè la definizione della classe da cui è stato istanziato l'oggetto.

Ogni metodo è dotato di una signature: tipo di ritorno, nome del metodo e lista di argomenti. Nella definizione del metodo sono presenti anche altri metadati, ma quelli che distinguono univocamente un metodo tra gli altri di una certa classe (la signature, appunto) sono questi.

Un campo o metodo di una classe può essere statico o no. Un membro statico si differenzia sintatticamente da uno di istanza per la presenza della parola-chiave static nella definizione. Un membro di istanza "appartiene" alle istanze della classe che lo definisce, nel senso che gli altri oggetti del programma chiamano il metodo o usano il campo appartenente alla singola istanza specifica. Un membro statico, invece, non appartiene a un certo oggetto, ma piuttosto alla classe in cui è definito.

La presenza dei membri statici permette di ottenere qualcosa di simile alle variabili globali e alle funzioni dei linguaggi procedurali, come il C. In alcuni casi i membri statici sono indispensabili, ma farne un uso eccessivo significa allontanarsi dall'aspetto object-oriented del Java ed è sconsigliato. In Java non si parla di funzioni, ma sempre e solo di metodi (anche quando sono statici).

Sintassi

Si riporta l'esempio funzionante del capitolo "Primo programma" della classe HelloWorld:

public class HelloWorld {
    public static void main (String args[]) {
        System.out.println("Hello, world!");
    }
}

È convenzione che i nomi delle classi comincino con la maiuscola, ed è bene rispettare questa prassi, per la leggibilità del codice, anche se non è obbligatoria.

Note