25.06.2019 Views

Introduzione alla programmazione

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

www.filoweb.it<br />

CAPITOLO III<br />

NON ABBIAMO ANCORA FINITO CON LE CLASSI<br />

In C#, come in tutti i linguaggi ad oggetti le classi sono la cosa più importante.<br />

Fino ad ora ne abbiamo visto degli esempi anche per i programmi più semplici e siamo giunti ad un punto nel<br />

quale dobbiamo approfondire le caratteristiche delle classi.<br />

Consideriamo il nostro primo programma auto ed in particolare la costruzione dell’oggetto MiaAutomobile<br />

automobile MiaAutomobile = new automobile ();<br />

Vediamo che la parola chiave new è seguita dal nome della classe con due parentesi tonde. Questo è perché<br />

automobile è un metodo speciale chiamato costruttore.<br />

Un costruttore non viene esplicitamente definito in una classe quando la si crea ma esiste anche se non svolge<br />

nessuna funzione viene semplicemente invocato quando si crea una nuova istanza per una classe, come nel<br />

nostro esempio.<br />

Posso utilizzare i costruttori anche per inizializzare o invocare alcuni campi di una classe senza il dover<br />

accedervi direttamente.<br />

Modifichiamo la nostra classe automobile come segue:<br />

}<br />

public class automobile<br />

{<br />

private string marca;<br />

private string modello;<br />

private string colore;<br />

private byte anni;<br />

private float pagata;<br />

public automobile(<br />

string varmarca,<br />

string varmodello,<br />

string varcolore,<br />

byte varanni,<br />

float varpagata<br />

)<br />

{<br />

marca = varmarca;<br />

modello = varmodello;<br />

colore = varcolore;<br />

anni = varanni;<br />

pagata = varpagata;<br />

}<br />

public float valorenuovo()<br />

{<br />

return pagata - anni * 100;<br />

}<br />

public void risposta()<br />

{<br />

Console.WriteLine("marca:...........: " + marca );<br />

}<br />

Console.WriteLine("modello:.........: " + modello );<br />

Console.WriteLine("colore:..........: " + colore );<br />

Console.WriteLine("pagata:..........: " + pagata );<br />

Console.WriteLine("anzianità:.......: " + anni );<br />

Console.WriteLine("Valore attuale:..: " + valorenuovo() );<br />

}<br />

22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!