Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Arv i C#

Postades av 2012-01-24 16:51:03 - Karl Eriksson, i forum c# (c-sharp), Tråden har 1 Kommentarer och lästs av 5233 personer

Tjenare har väldiga problem med att förstå arv, min uppgift är denna:

Jag ska göra en applikation som har ett antal listboxes och textfält som fylls av enums. När dessa är ifyllda och man trycker på spara ska ett objekt av Bil skapas. Nu är det så att Bil har en hel del fält som är generella för alla underklasser så därför ska klass Toyota ärva av Bil.

Så långt är jag med och har min basklass samt min klass Toyota : Bil. Problemet blir när jag ska spara, hur gör jag då? Ska jag skicka datan som parametrar till klass Toyota och isåfall vad gör klass Bil för nytta? Jag kan förstå om Klass Bil hade förutbestämda variabler men nu har ju bara klass Bil en definition av fälten?

Säg att jag har två variabler, 4 dörrar och en baklucka, dessa fält finns definerade i klassen Bil eftersom alla bilar har dessa men sedan har klassen toyota ett eget fält som ska vara färg till exempel. Hur ska detta göras då? Jag kan ju inte göra en konstruktor som säger public Toyota(variabel1, variabel2) : base(variabel1, variabel2) väl eftersom bil klassen innehåller ju inga parametrar?

Om det är ett dåligt exempel ber jag om ursäkt, kom inte på något men har väldigt svårt att greppa detta och använda det i min applikation.


Svara

Sv: Arv i C#

Postades av 2012-01-26 01:42:47 - Andreas Thorarins

I sin enklaste form kan man säga att arv används för att minska mängden kod
finns en uppsjö med artiklar i ämnet. tex.

http://msdn.microsoft.com/en-us/library/ms173149.aspx

http://www.codeproject.com/Articles/1445/Introduction-to-inheritance-polymorphism-in-C


Svar på dina konkreta frågor.
Du kan skicka dina parametrar till toyota. då sätter konstruktorn dem i sig själv efter som basklassen är exponerad i toyota. du spar deklarationen av fälten när du skapar nästa bilmärke om du har en basklass med de gemensamma fälten.

Om du vill skicka in parametar i konstruktorn på toyota så kan du skicka alla även de som ligger i basklassen och sätta dem direkt i toyotas konstruktor efter som de är exponerad i den klassen.

ex. public toyota(a,b,c)
{
// base kan uteslutas här eftersom de redan är exponerade i toyota
base.A = a;
base.B = b
C = c;
}
sätter du däremot a och b i alla klasser som ärver Bil så kan du lägga den delen av konstrukorn där.
hoppas jag inte rört till det för dig :)





Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 763
27 959
271 761
433
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies