Introduzione alla programmazione

25.06.2019 Views

www.filoweb.it matematiche, senza alcun requisito per archiviare o recuperare dati univoci per una particolare istanza della classe Math. using System; public static class clstatica { // Non c'è un costruttore quindi non ci può essere un istanza public static int contatore { get; set; } public static int GetCount() { return contatore; } } public class statica { static void Main(string[] args) { clstatica.contatore++; Console.WriteLine(clstatica.GetCount()); } } EREDITARIETÀ DELLE CLASSI L’ereditarietà è uno dei concetti fondamentali della programmazione ad oggetti e quindi anche in C#. Grazie all’ereditarietà una classe può ereditare i dati membro ed i metodi di un’altra classe. Per creare una classe derivata è sufficiente far seguire al suo nome il nome della classe base preceduto da due punti come nell'esempio seguente: class utilitaria : automobile Vediamo di spiegarci meglio: abbiamo due classi: la classe automobile e la classe utilitaria. Le auto utilitarie è un tipo di auto nella realtà e allo stesso modo la classe utilitaria appartiene alle automobili…. Classe Automobile Marca Modello Valore Classe Utilitaria Alimentazione Dotazione Ogni utilitaria sarà quindi anche un’automobile con in più due proprietà: alimentazione e dotazione. Posso quindi istanziare MiaAutomobile come sempre utilitaria MiaAutomobile = new utilitaria(); e devo passare i relativi argomenti. utilitaria MiaAutomobile = new utilitaria( "Fiat", "500", 7500, "GPL", "Base" ); Vediamo un esempio completo….. 28

www.filoweb.it using System; class eredita { public static void Main() { utilitaria MiaAutomobile = new utilitaria( "Fiat", "500", 7500, "GPL", "Base" ); MiaAutomobile.risposta(); } } public class automobile { public string marca; public string modello; public float valore; { } public automobile ( string marca, string modello, float valore ) this.marca=marca; this.modello=modello; this.valore=valore; } class utilitaria : automobile { private string alimentazione; private string dotazioni; public utilitaria ( { } this.alimentazione=alimentazione; this.dotazioni=dotazioni; string marca, string modello, float valore, string alimentazione, string dotazioni ) : base (marca, modello, valore) } { } public void risposta() Console.WriteLine("marca:...........: " + marca ); Console.WriteLine("modello:.........: " + modello ); Console.WriteLine("colore:..........: " + valore ); Console.WriteLine("pagata:..........: " + alimentazione ); Console.WriteLine("anzianità:.......: " + dotazioni ); 29

www.filoweb.it<br />

matematiche, senza alcun requisito per archiviare o recuperare dati univoci per una particolare istanza della<br />

classe Math.<br />

using System;<br />

public static class clstatica<br />

{<br />

// Non c'è un costruttore quindi non ci può essere un istanza<br />

public static int contatore { get; set; }<br />

public static int GetCount()<br />

{<br />

return contatore;<br />

}<br />

}<br />

public class statica<br />

{<br />

static void Main(string[] args)<br />

{<br />

clstatica.contatore++;<br />

Console.WriteLine(clstatica.GetCount());<br />

}<br />

}<br />

EREDITARIETÀ DELLE CLASSI<br />

L’ereditarietà è uno dei concetti fondamentali della <strong>programmazione</strong> ad oggetti e quindi anche in C#.<br />

Grazie all’ereditarietà una classe può ereditare i dati membro ed i metodi di un’altra classe.<br />

Per creare una classe derivata è sufficiente far seguire al suo nome il nome della classe base preceduto da<br />

due punti come nell'esempio seguente:<br />

class utilitaria : automobile<br />

Vediamo di spiegarci meglio: abbiamo due classi: la classe automobile e la classe utilitaria. Le auto utilitarie<br />

è un tipo di auto nella realtà e allo stesso modo la classe utilitaria appartiene alle automobili….<br />

Classe Automobile<br />

<br />

<br />

<br />

Marca<br />

Modello<br />

Valore<br />

Classe Utilitaria<br />

Alimentazione<br />

Dotazione<br />

Ogni utilitaria sarà quindi anche un’automobile con in più due proprietà: alimentazione e dotazione.<br />

Posso quindi istanziare MiaAutomobile come sempre<br />

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

e devo passare i relativi argomenti.<br />

utilitaria MiaAutomobile = new utilitaria(<br />

"Fiat",<br />

"500",<br />

7500,<br />

"GPL",<br />

"Base"<br />

);<br />

Vediamo un esempio completo…..<br />

28

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

Saved successfully!

Ooh no, something went wrong!