ok, tak. hvordan laver man det, hvis Interfacet skal bruges til at sætte en Property i klassen ?
Har prøvet, men får denne fejl:Error 1 Property or indexer 'Interface2.Bus.NumberOfSeats' cannot be assigned to -- it is read only C:\a_SILASY\BAIT\C#\Interface2\Interface2\Interface2\Bus.cs 44 13 Interface2
Interface: int regnr(int nyt_nummer);
klasse: public int regnr(int nyt_nummer) { this.NumberOfSeats = nyt_nummer; }
Du kunne også lave et interface med dine metoder {get/set} og etc. Så lave en public abstract class Taxa der nedarver fra dit interface --> public abstract VehicleImpl : IVehicle (når den er abstract kan du ikke lave et objekt af den) og i denne implementerer du alle metoder der er i dit interface (kan du gøre vha. at højreklikke på dit interfacenavn du nedarver fra og sige implement. Så ligger du attributterne ind, dine get/set og andre metoder og hele logikken.
Så i den klasse hvor du fx. vil bruge metoderne og attributterme kan du nedarve din abstract klasse som så får metoderne med logik med i sig.
Fx. du laver IVehicle med metoden interface IVehicle Start() Stop()
og laver VehicleImpl (implementatationen af dit interface) public abstract VehicleImpl : IVehicle
public void Start() { //Check gear or set in 1. //Press in clutch //Turn key }
public void Stop() { //Turn key etc... }
Nu har du fx. klassen Taxa, og klassen Bus som begge skal have ovenstående metoder med i sig men som OGSÅ skal have specialiseringer -->
public class Taxa : VehicleImpl { private string mydrivername = "";
public Taxa(string drivername) { mydrivername = drivername; }
public void YellAtPassenger() { this.Stop(); //Do something with the passenger }
^^ Dermed kan du bruge metoderne du nedarver metoden du har lavet i din VehicleImpl.
og i klassen Bus kan du gøre det samme i speciliseringer. Derved kan du opbygge en hel struktur med nedarvninger og specaliseringer alt efter dit behov.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.