Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C# Klassen & Objekte: Fundamente für robustes OOP

C# Klassen & Objekte: Fundamente für robustes OOP

In diesem Tutorial lernen Sie das Konzept von Klassen und Objekten in C# anhand von Beispielen kennen.

C# ist eine objektorientierte Sprache, die Anwendungen um Objekte strukturiert. In der OOP lösen wir komplexe Probleme, indem wir sie in wiederverwendbare, in sich geschlossene Objekte aufteilen.

Um mit Objekten zu arbeiten, müssen wir folgende Aktivitäten ausführen:


C# Klasse

Eine Klasse ist der Bauplan für ein Objekt. Denken Sie an einen Hausplan: Er definiert Räume, Türen, Fenster und strukturelle Regeln. Ein tatsächliches Haus, das nach diesem Plan gebaut wird, ist ein Objekt.

Mehrere Häuser können denselben Plan teilen, genauso wie viele Objekte aus derselben Klasse erstellt werden können.

Klasse in C# erstellen

class ClassName { }

Hier haben wir eine Klasse namens ClassName definiert. Eine Klasse kann enthalten:

Beispiel:

class Dog {
    // Feld
    string breed;
    // Methode
    public void Bark() {
        // Implementierung
    }
}

Im obigen Beispiel:

Hinweis: In C# umfassen Klassenmember sowohl Felder als auch Methoden.


C# Objekte

Ein Objekt ist eine Instanz einer Klasse. Zum Beispiel kann die Klasse Dog Objekte wie Bulldogge, Deutscher Schäferhund oder Mops erzeugen.

Objekt einer Klasse erstellen

ClassName obj = new ClassName();

Hier erstellt new ein Objekt; obj ist sein Name. Zum Beispiel:

Dog bullDog = new Dog();

Das bullDog Objekt kann nun auf die in Dog definierten Felder und Methoden zugreifen.


Auf Klassenmember über ein Objekt zugreifen

Mit dem Punktoperator (.) auf Member zugreifen:

using System;
namespace ClassObject {
    class Dog {
        string breed;
        public void Bark() {
            Console.WriteLine("Bark Bark !!");
        }
        static void Main(string[] args) {
            // Dog Objekt erstellen
            Dog bullDog = new Dog();
            // Rasse setzen
            bullDog.breed = "Bull Dog";
            Console.WriteLine(bullDog.breed);
            // Methode aufrufen
            bullDog.Bark();
            Console.ReadLine();
        }
    }
}

Ausgabe

Bull Dog Bark Bark !!

Beachten Sie die Verwendung von bullDog und dem Punktoperator zum Zugriff auf breed und Bark().


Mehrere Objekte einer Klasse erstellen

Instanziieren Sie mehrere Objekte aus derselben Klasse, jeweils mit eigenen Daten:

using System;
namespace ClassObject {
    class Employee {
        string department;
        static void Main(string[] args) {
            // erster Mitarbeiter
            Employee sheeran = new Employee();
            sheeran.department = "Development";
            Console.WriteLine("Sheeran: " + sheeran.department);
            // zweiter Mitarbeiter
            Employee taylor = new Employee();
            taylor.department = "Content Writing";
            Console.WriteLine("Taylor: " + taylor.department);
            Console.ReadLine();
        }
    }
}

Ausgabe

Sheeran: Development Taylor: Content Writing

Jedes Objekt hält seinen eigenen department Wert.


Objekte in einer anderen Klasse erstellen

Objekte können in anderen Klassen erstellt werden. Beispiel:

using System;
namespace ClassObject {
    class Employee {
        public string name;
        public void Work(string work) {
            Console.WriteLine("Work: " + work);
        }
    }
    class EmployeeDrive {
        static void Main(string[] args) {
            // Employee Objekt erstellen
            Employee e1 = new Employee();
            Console.WriteLine("Employee 1");
            // Name setzen
            e1.name = "Gloria";
            Console.WriteLine("Name: " + e1.name);
            // Methode aufrufen
            e1.Work("Coding");
            Console.ReadLine();
        }
    }
}

Ausgabe

Employee 1 Name: Gloria Work: Coding

Hier erstellt EmployeeDrive ein Employee Objekt. Öffentliche Member erlauben den klassenübergreifenden Zugriff. Mehr zu Zugriffsmodifizierern in den offiziellen Docs.


Warum Objekte und Klassen?

Klassen und Objekte ermöglichen modulare Designs. Für ein Spiel mit vielen Gegnern kann eine einzelne Enemy Klasse health, ammo, Shoot() und Run() definieren. Jede Gegnerinstanz behält dann ihren eigenen Zustand bei, während sie Verhalten teilt.

Indem wir Code um Objekte modellieren, reduzieren wir Komplexität, verbessern Wartbarkeit und fördern Wiederverwendbarkeit.

C Sprache

  1. C# Abstrakte Klassen & Methoden meistern: Praktischer Leitfaden
  2. C# Partielle Klassen und Methoden verstehen
  3. Versiegelte Klassen und Methoden in C# meistern
  4. C++ Klassen & Objekte: Praktischer Leitfaden zur objektorientierten Programmierung
  5. C++ Friend-Funktionen und Friend-Klassen: Zugriffskontrolle meistern
  6. Python Objektorientierte Programmierung meistern: Klassen, Vererbung, Kapselung & Polymorphie
  7. Java Klassen und Objekte: Praktischer Leitfaden
  8. Java abstrakte Klassen und Methoden: Ein umfassender Leitfaden
  9. Java verschachtelte und innere Klassen meistern: Typen, Beispiele und Best Practices
  10. Java Singleton-Pattern erklärt: Sichere Implementierung und Verwendung