Erklärung von Objekten

Micha - Spawn

Grünschnabel
hiho!
Wir haben vor kurzem in der Schule mit C# angefangen. Da wir schon 1 Jahr lang mit C Programmiert haben, fangen wir jetzt mit Objekten an. Der Lehrer hat uns was erklärt aber ich merke gerade das ich noch nicht so ganz durch blicke. Sind Objekte nicht das gleiche wie Funktionen nur das man bei C# noch in eine class bringen muss?
Unser Lehrer hat gesagt Objekte wissen nur was sie zu tun haben und sonst nix. Das gleiche sit doch bei Funktionen auch. ich übergebe Werte und die Funktion errechnet mir was oder sonst was.
Vieleicht kann hier nochmal einer ne kurze Erklärung machen was Objekte sind und wie ich sie genau nutze.
Vielen Dank

Spawn
 
Je komplexer deine Programme werden, desto mehr Methoden und Daten wirst du benötigen. Für den Programmierer wird es immer schwerer zu erkennen welche Daten und Methoden letztendlich zusammengehören. Also warum alles trennen?

Objekte gibt es auch in der realen Welt. Nehmen wir als Beispiel mal ein Fahhrad und ein Auto. Beide besitzen verschiedene Merkmale .Ein Auto hat 4 Räder, ein Fahrrad 2.

Code:
class CAuto
{
    public int Raederanzahl= 4;
}

class cFahrrad
{    
    public int Raederanzahl = 2;
}

Zudem können beide verschiedene Dinge tun. sie können Fahren.



Code:
class CAuto
{
    public int Raederanzahl = 2;
    public string farbe;

    public void Fahren()
    {
        //Fahren
    }
}

class cFahrrad
{    
    public int Raederanzahl = 2;
    public string farbe;

    public void Fahren()
    {
        //Fahren
    }
}

Die Objekte im Programm repräsentieren oft Objekte aus der realen Welt. Können aber auch virtuelle Objekte, die nur im PC vorhanden sind repräsentieren (zb. ein Windows-Fenster).

Objekte werden also anhand ihrer verschiedenen Merkmale klassifiziert.
Diese Beschreibung findet innerhalb der Klasse statt. Eine Klasse beschreibt also ein Objekt und mit ihr können beliebig viele Objekte, auf die diese Beschreibung passt, erstellt werden.

Code:
CAuto meinAuto = new CAuto();
meinAuto.Farbe = "blau";

CAuto meinAuto2 = new CAuto();
meinAuto2.Farbe = "rot";
meinAuto2.Fahren();

CFahrrad meinFahrrad = new cFahrrad();
meinFahrrad.Farbe = "gelb";

Hier habe ich 3 Objekte instanziiert. Die 2 Autos wurden in der Klasse CAuto beschrieben und besitzen somit die gleichen Eigenschaften und Methoden.
Der 'Bauplan' ist Gleich.
Trotzdem können sie verschiedene Merkmale aufweisen. Ich habe ein rotes und ein blaues Auto.
 
Zuletzt bearbeitet:
Zurück