Namngivnings-konventioner


Facit prov OOP


  1. using System;
    Denna rad importerar System-namnrymden, en grundläggande namnrymd i C#. Den innehåller vanligt använda typer som Console, som används för in- och utmatningsoperationer.

  2. public class Vehicle
    Detta deklarerar en offentlig klass med namnet Vehicle. public betyder att denna klass kan nås från andra klasser.

  3. {
    Detta öppnar klassdefinitionen för Vehicle.

  4. public string Make { get; set; }
    Denna rad deklarerar en egenskap (property) Make av typen string. Den är offentlig, vilket betyder att den kan nås från andra klasser. Syntaxen { get; set; } tillåter att denna egenskap kan läsas och ändras.

  5. public string Model { get; set; }
    Liknande Make-egenskapen, deklarerar denna rad en Model-egenskap av typen string med offentlig åtkomst och getter och setter.

  6. public virtual void DisplayInfo()
    Detta deklarerar en offentlig metod som heter DisplayInfo som inte returnerar något värde (void). Nyckelordet virtual tillåter att denna metod kan överlagras i härledda klasser.

  7. {
    Detta öppnar metoddefinitionen för DisplayInfo.

  8. Console.WriteLine($"Make: {Make}, Model: {Model}");
    Denna rad skriver ut egenskaperna Make och Model för Vehicle till konsolen. Den använder interpolerade strängar (markerade med $), vilket möjliggör infogning av egenskapsvärdena direkt i strängen.

  9. }
    Detta avslutar metoddefinitionen för DisplayInfo.

  10. }
    Detta avslutar klassdefinitionen för Vehicle.

  11. public class ElectricCar : Vehicle
    Denna rad definierar en ny klass ElectricCar som ärver från (:) klassen Vehicle. Detta innebär att ElectricCar kommer att ärva alla offentliga och skyddade medlemmar från Vehicle.

  12. {
    Detta öppnar klassdefinitionen för ElectricCar.

  13. public int BatteryCapacity { get; set; }
    Detta deklarerar en egenskap BatteryCapacity av typen int. Den representerar batterikapaciteten för den elektriska bilen.

  14. public override void DisplayInfo()
    Detta deklarerar en metod DisplayInfo som överlagrar metoden DisplayInfo i bas-klassen Vehicle. Nyckelordet override används för att modifiera eller utöka bas-klassmetoden.

  15. {
    Detta öppnar metoddefinitionen för den överlagrade DisplayInfo-metoden.

  16. Console.WriteLine($"Make: {Make}, Model: {Model}, Battery Capacity: {BatteryCapacity} kWh");
    Denna rad skriver ut egenskaperna Make, Model och BatteryCapacity för ElectricCar. Det demonstrerar polymorfism där DisplayInfo beter sig annorlunda i klassen ElectricCar jämfört med klassen Vehicle.

  17. }
    Detta avslutar metoddefinitionen för den överlagrade DisplayInfo.

  18. }
    Detta avslutar klassdefinitionen för ElectricCar.

  19. public class Program
    Detta deklarerar en klass med namnet Program. Det är applikationens startpunkt.

  20. {
    Detta öppnar klassdefinitionen för Program.

  21. public static void Main()
    Detta deklarerar Main-metoden, som är startpunkten för en C#-applikation. static betyder att den kan kallas utan att skapa en instans av klassen.

  22. {
    Detta öppnar metoddefinitionen för Main.

  23. Vehicle myCar = new ElectricCar { Make = "Tesla", Model = "Model S", BatteryCapacity = 85 };
    Denna rad skapar en instans av ElectricCar, tilldelar den till en variabel myCar av typen Vehicle. Detta demonstrerar polymorfism där en bas-klassreferens (Vehicle) används för att hänvisa till ett objekt av en härledd klass (ElectricCar). Objektet initieras med Make, Model och BatteryCapacity genom användning av objektinitieringssyntax.

  24. myCar.DisplayInfo();
    Detta anropar metoden DisplayInfomyCar. På grund av polymorfismen, körs den överlagrade versionen i ElectricCar, som visar detaljer om den elektriska bilen.

  25. }
    Detta avslutar metoddefinitionen för Main.

  26. }
    Detta avslutar klassdefinitionen för Program.

Denna kod demonstrerar flera grundläggande koncept i C# såsom klasser, arv, polymorfism, egenskaper och metoder.




Den här sidan designades av 21C: