programmiamo in java

Oggetti in Java

I programmi in Java consistono di classi.
Le classi consentono di definire:
collezioni di procedure, funzioni ad uso esclusivo interno (metodi statici non modificabili dall'esterno)
oggetti o istanze della classe in cui si definiscono variabili e metodi d’istanza (funzioni e/o regole che definiscono il loro stato interno e le operazioni) che posso essere richiamati dall'esterno
Le due funzionalita’ possono coesistere all’interno di una stessa classe
Una classe può’ contenere variabili statiche  e d’istanza(modificabili dall'esterno).
Analogo per i metodi

 

Java è un linguaggio orientato agli oggetti. Ma cosa si intende per oggetto?

E' una struttura definita all'interno di una classe, qualcosa in grado di gestire precise operazioni. Ogni oggetto è deputato allo svolgimento di precise mansioni e ciò che elabora può essere trasmesso ad un oggetto o classe chiamante (se public o static) o solo ad altri metodi presenti nella classe in sui sono stati definiti (private). Ricordiamoci che tutto ciò che è static è fisso chi chiama una variabile o istanza static non potrà mai modificare il valore (statico) ricevuto. Chi modifica un static modifica il valore in tutte le chiamate all'istanza in esame (ne riparleremo successivamente).

L'oggetto System, appartenente alla libreria lang, è utilizzato per leggere[in], scrivere (sul monitor o su files)[out], gestire gli errori [err].

Abbiamo un oggetto [System], che è caratterizzato da tre metodi [in,out,err] e varie istanze ai metodi (ad esempio println("qualche cosa").

Se vogliamo utilizzare un oggetto già confezionato dobbiamo innanzitutto capire cosa possiamo richiedere e se è ciò che ci interessa nel digitare il listato avvisare la classe (il nostro programma) che vogliamo importare un oggetto che appartiene ad un insieme di oggetti ragruppati in una certa libreria (classe di oggetti) con l'istruzione

import java.nomelibreria.*;

Tutto ciò che è presente nella libreria lang può essere utilizzato anche se non importiamo questa libreria, perché java autometicamente carica la libreria java.lang.* prima di compilare.

Perché lavorare in prompt di dos quando abbiamo a disposizione molti oggetti che ci permettono di lavorare usando finestre?

Per i prossimi programmi rifaremo quanto fatto fino adesso, utilizzando finestre create dall'oggetto

JOptionPane, appartenente alla libreria javax.swing.

Utilizzeremo due istanze all'oggetto:

  1. showInputDialog("messaggio"); con cui chiederemo all'utilizzatore di inserire quanto richiesto dal messaggio.
  2. showMessageDialog(null,messaggio,"titolo ",JOptionPane.opzione);
    1. in futuro avviseremo che è parte di un certo oggetto, per il momento nessuno null.
    2. messaggio: ciò che vogliamo comunicare.
    3. titolo che deve apparire sulla barra del menù tra doppi apici.
    4. opzione al posto di questa parola dovremo scrivere uno dei seguenti identificatori (TUTTO MAIUSCOLO).
      1. ERROR_MESSAGE (messaggio di errore commesso)
      2. INFORMATION_MESSAGE (Informazione all'utente)
      3. WARNING_MESSAGE (pericolo azione non corretta)
      4. QUESTION_MESSAGE (domanda all'utente)
      5. PLAIN_MESSAGE (semplice messaggio) noi useremo sempre e solo questa scelta.

Nella visualizzazione si può visualizzare un solo messaggio.

Se il messaggio va stampato su più righe bisogna scrivere in corrispondenza del punto in cui vogliamo andare a capo \n e successivamente scrivere la seconda riga.

Supponiamo che il messaggio sia: messaggio=" luigi \n non ha bevuto \n latte e \n non ha mangiato nulla"

l'output diventerà:

luigi
non ha bevuto
latte e
non ha mangiato nulla

Ora cominciamo ad utilizzare l'oggetto JOptionPane.