Freigeben über


Umgestaltung von Klassen und Typen (Klassen-Designer)

Wenn Sie einen Code umgestalten, ist er leichter zu verstehen, zu verwalten und effizienter durch die Änderung seiner internen Struktur und die Art, wie seine Objekte entworfen werden, nicht aber sein externes Verhalten. Verwenden Sie den Klassen-Designer und im Klassendetail-Fenster, um die Arbeit, die Sie erledigen müssen, und die Wahrscheinlichkeit der Einführung von Fehlern beim Umgestalten von Visual C# .NET, Visual Basic .NET oder C++-Code im Visual Studio-Projekt zu reduzieren.

Hinweis

Die Dateien eines Projekts sind möglicherweise schreibgeschützt, da das Projekt unter Quellcodeverwaltung steht und nicht ist ausgecheckt ist; auf das Projekt verwiesen wird oder die Dateien auf dem Datenträger als schreibgeschützt markiert sind.Bei der Arbeit an einem Projekt in einem dieser Zustände werden verschiedene Möglichkeiten zum Speichern Ihrer Arbeit je nach Zustand des Projekts angezeigt.Dies gilt für die Umgestaltung eines Codes und für einen Code, den Sie auf andere Weise ändern, z. B. indem Sie ihn direkt bearbeiten.Weitere Informationen finden Sie unter Display of Read-Only Information.

Allgemeine Aufgaben

Aufgabe

Unterstützender Inhalt

Umgestaltung von Klassen:Sie können Umgestaltungsvorgänge zum Aufteilen eine Klasse in Teilklassen oder zur Implementierung einer abstrakten Klasse verwenden.

Arbeiten mit Schnittstellen:Im Klassen-Designer Sie können eine Schnittstelle im Klassendiagramm implementieren, indem Sie es an eine Klasse anhängen, die einen Code für die Schnittstellenmethoden vorsieht. Bei Verwendung von Visual C# können Sie auch ein oder mehrere öffentliche Mitglieder aus einem Typ in eine neue Schnittstelle extrahieren.

Umgestaltung von Typen, Typenmitgliedern und Parametern:Mithilfe des Klassen-Designers können Sie mühelos Änderungen vornehmen, z. B. einen Typ oder ein Typmitglied umbenennen. Sie können Typmitglieder überschreiben oder von einem Typ in einen anderen verschieben. Sie können problemlos Typen erstellen, die nicht auf null festlegbar sind. Und wenn Sie Visual C# verwenden, können Sie die Methodenparameter neu anordnen.

Implementieren abstrakter Basisklassen

Mit dem Klassen-Designer können Sie eine abstrakte Klasse implementieren.

Bei diesem Verfahren wird Folgendes vorausgesetzt:

  • Ihr Projekt enthält eine abstrakte Klasse.

  • Die abstrakte Klasse enthält abstrakte Mitglieder.

  • Die abstrakte Klasse ist die Basisklasse in einer Vererbungsbeziehung mit einer anderen Klasse. (Die abgeleitete Klasse muss keine abstrakte Klasse sein.)

Implementieren einer abstrakten Klasse

  • Rechtklicken Sie auf die abgeleitete Klasse, klicken Sie auf IntelliSense und dann auf Abstrakte Klasse implementieren. Alle abstrakten Mitglieder der Basisklasse werden in der abgeleiteten Klasse implementiert.

Weitere Informationen finden Sie unter Gewusst wie: Erstellen der Vererbung zwischen Typen (Klassen-Designer) und Gewusst wie: Erstellen von Typen mit dem Klassen-Designer.

Extrahieren von Mitgliedern einer Schnittstelle

Sie können ein oder mehrere öffentliche Mitglieder aus einem Typ in eine neue Schnittstelle extrahieren.

Um Mitglieder in eine neue Schnittstelle zu extrahieren

  1. Rechtsklicken Sie im Klassen-Designer auf den Typ, der das oder die Mitglieder enthält, die Sie extrahieren möchten, zeigen Sie auf Umgestalten und klicken Sie dann auf Schnittstelle extrahieren.

    Im Dialogfeld Schnittstelle extrahieren werden Standardwerte für den Namen der Schnittstelle und den Namen der Codedatei, in der sie deklariert werden, angezeigt. Entweder Sie übernehmen die Standardwerte oder ändern sie.

  2. Im Bereich Öffentliche Member für Schnittstelle auswählen aktivieren oder deaktivieren Sie das Kontrollkästchen neben den Membern, die Sie in die neue Schnittstelle extrahieren möchten und klicken Sie dann auf OK.

    Eine neue Schnittstelle wird erstellt, und die Datei, die diese beinhaltet, wird dem Projekt hinzugefügt.

Überschreiben von Typmembern

Im Klassen-Designer können Sie Member, wie Methoden und Eigenschaften in einer untergeordneten Klasse, zum Überschreiben von den aus einer Basisklasse geerbten Membern verwenden. Das Überschreiben eines Members ist nur möglich, wenn Folgendes gilt:

  • Die überschriebene Basismethode muss virtuell, abstrakt oder überschreiben sein. (Sie kann nicht virtuell oder statisch sein.)

Um einen Member zu überschreiben

  1. rechtsklicken Sie im Klassendiagramm auf ein Klasse-Shape und klicken Sie auf IntelliSense dann auf Memberüberschreiben.

    Ein Dialogfeld mit überschreibbaren Membern wird angezeigt.

  2. Geben Sie in der Liste einen Member an.

    Ein Member mit demselben Namen, Zugriffsmodifizierer und Rückgabewert wird in der Klasse sngezeigt, und die Inheritance Modifier-Eigenschaft wird auf Überschreibungen in Visual Basic oder Überschreiben in C# festgelegt.

Umbenennen von Typen und Typmembern

Im Klassen-Designer können Sie einen Typ oder einen Member eines Typs im Klassendiagramm oder im Eigenschaftenfenster umbenennen. Im Fenster Klassendetails können Sie den Namen eines Members, aber keinen Typ ändern. Die Umbenennung eines Typs oder Typmember wird an alle Fenster und Codepositionen übergeben, in denen der alte Name auftrat.

Um einen Namen im Klassen-Designer umzubenennen,

  1. Wählen Sie im Klassendiagramm den Typ oder Member.

    Der Name des Members kann jetzt bearbeitet werden.

  2. Geben Sie den neuen Namen für den Typ oder Typmember ein

Um einen Namen im Fenster Klassendetails umzubenennen,

  1. Um das Fenster Klassendetails anzuzeigen, klicken Sie mit der rechten Maustaste auf den Typ oder den Typmember und dann auf Klassendetails.

    Das Fenster Klassendetails wird angezeigt.

  2. Ändern Sie in der Spalte Name den Namen des Typmembers.

  3. Um den Fokus von der Zelle zu verschieben, drücken Sie die EINGABETASTE oder klicken Sie außerhalb der Zelle.

    Hinweis

    Im Fenster Klassendetails können Sie den Namen eines Members, aber keinen Typ ändern.

Um einen Namen im Eigenschaftenfenster zu ändern

  1. Rechtsklicken Sie im Klassendiagramm oder im Fenster Klassendetails auf Typ oder Member und klicken Sie dann auf Eigenschaften.

    Das Fenster Eigenschaften wird angezeigt und zeigt die Eigenschaften für den Typ oder Typmember an.

  2. In der Eigenschaft Name ändern Sie den Namen des Typs bzw. Typmembers.

    Der neue Name wird an alle Fenster und Codepositionen im aktuellen Projekt übertragen, in dem der alte Name auftrat.

Neuanordnen von Parametern

Im Klassen-Designer können Sie die Reihenfolge von Methodenparameter in Typen ändern.

Hinweis

Optionale Parameter müssen in der Parameterliste die letzten Parameter sein.Weitere Informationen zum Erstellen optionaler Parameter mit dem Klassen-Designer finden Sie unter Adding Parameters to Methods.

So ändern Sie die Reihenfolge der Parameter

  1. Erweitern Sie im Klassendiagramm die Typform und dann das Methoden-Fach.

  2. Rechtsklicken Sie im Methoden-Fach auf die Methode mit den Parametern, die Sie neu anordnen möchten, zeigen Sie auf Umgestalten und klicken Sie auf Parameter neu anordnen.

    Das Dialogfeld Parameter neu anordnen wird angezeigt.

  3. Im Dialogfeld Parameter neu anordnen bringen Sie die Parameter in die gewünschte Reihenfolge und klicken Sie dann auf OK.

    Die Parameterreihenfolge ändert sich im Code und in der Form im Klassendiagramm.

Typmember von einem Typ in einen anderen verschieben

Mit dem Klassen-Designer können Sie einen Typmember von einem Typ in einen anderen Typ verschieben, wenn beide Typen im aktuellen Klassendiagramm sichtbar sind.

Um einen Typmember von einem Typ in einen anderen zu verschieben.

  1. Rechtsklicken Sie in einem Typ, der auf der Entwurfsoberfläche angezeigt wird, auf den Member, den Sie in einen anderen Typ verschieben möchten, und klicken Sie dann auf Aussschneiden.

  2. Rechtsklicken Sie auf den Zieltyp und klicken Sie dann auf Einfügen.

    Die Eigenschaft wird aus dem Quelltyp entfernt und im Zieltyp angezeigt wird.

Verwandte Themen

Titel

Beschreibung

Anzeigen von Typen und Beziehungen (Klassen-Designer)

Entwerfen von Klassen und Typen (Klassen-Designer)