reflection
Ny medlem
Håller på att lära mig C#, har bara hållt på någon vecka så alla förklaringar får gärna tas på väldigt lätt nivå 
Grunduppgiften ser ut såhär;
Från den koden skall jag sedan göra följande:
"Ändra instansvariablerna i klassen Fordon så dessa blir "private".
Lägg sedan till metoder i klassen Fordon som kan sätta och hämta instansvariablernas värden.
Justera därefter Main så att programmet använder dessa metoder istället."
Jag ändrar sFärg till private, lägger till en metod för att läsa in värdet, och en metod för att returnera värdet. (är detta rätt?? jag fick metoden för att returnera av läraren så den bör vara rätt. Metoden för att läsa in värdet skulle jag dock göra själv, och jag är allt utom säker....)
Nästa problem är hur jag får värdet från sFärg ner i "svarstexten" längst ner sedan. Hur får jag den att hitta rätt värde?
(det som är fetstilat är ändrat/tillagt)
Någon som kan hjälpa mig?

Grunduppgiften ser ut såhär;
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Fordon
{
public string sFärg;
public string sTillverkare;
public int nAntalDörrar;
public int nMaxHastighet;
}
public class Program
{
static void Main(string[] args)
{
Fordon minBil = new Fordon();
Console.Write("Ange bilens färg: ");
string s = Console.ReadLine();
minBil.sFärg = s;
Console.Write("Ange bilmärke: ");
minBil.sTillverkare = Console.ReadLine();
Console.Write("Hur många dörrar har bilen? ");
s = Console.ReadLine();
minBil.nAntalDörrar = Convert.ToInt32(s);
Console.Write("Hur fort kan den köra? ");
s = Console.ReadLine();
minBil.nMaxHastighet = Convert.ToInt32(s);
Console.WriteLine("\nDin bil är tillverkad av " + minBil.sTillverkare);
Console.WriteLine("Färgen är " + minBil.sFärg);
Console.WriteLine("den har " + minBil.nAntalDörrar + "dörrar och maxhastigheten är " + minBil.nMaxHastighet);
Console.WriteLine("\nTryck Enter för att avsluta");
Console.ReadLine();
}
}
}
Från den koden skall jag sedan göra följande:
"Ändra instansvariablerna i klassen Fordon så dessa blir "private".
Lägg sedan till metoder i klassen Fordon som kan sätta och hämta instansvariablernas värden.
Justera därefter Main så att programmet använder dessa metoder istället."
Jag ändrar sFärg till private, lägger till en metod för att läsa in värdet, och en metod för att returnera värdet. (är detta rätt?? jag fick metoden för att returnera av läraren så den bör vara rätt. Metoden för att läsa in värdet skulle jag dock göra själv, och jag är allt utom säker....)
Nästa problem är hur jag får värdet från sFärg ner i "svarstexten" längst ner sedan. Hur får jag den att hitta rätt värde?
(det som är fetstilat är ändrat/tillagt)
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Fordon
{
[B] private [/B]string sFärg;
public string sTillverkare;
public int nAntalDörrar;
public int nMaxHastighet;
[B]public static void Färg(string sFärg)
{
Console.Write("Ange bilens färg: ");
sFärg = Console.ReadLine();
}
public string ReturnerarFärg()
{
return this.sFärg;
}[/B]
}
public class Program
{
static void Main(string[] args)
{
Fordon minBil = new Fordon();
Console.Write("Ange bilmärke: ");
minBil.sTillverkare = Console.ReadLine();
Console.Write("Hur många dörrar har bilen? ");
string s = Console.ReadLine();
minBil.nAntalDörrar = Convert.ToInt32(s);
Console.Write("Hur fort kan den köra? ");
s = Console.ReadLine();
minBil.nMaxHastighet = Convert.ToInt32(s);
Console.WriteLine("\nDin bil är tillverkad av " + minBil.sTillverkare);
Console.WriteLine("Färgen är " +[B]??????)[/B];
Console.WriteLine("den har " + minBil.nAntalDörrar + "dörrar och maxhastigheten är " + minBil.nMaxHastighet);
Console.WriteLine("\nTryck Enter för att avsluta");
Console.ReadLine();
}
}
}
Någon som kan hjälpa mig?
