DevTrain Startseite Advanced Developers Conference vom 14.-15. Februar 2011  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren


   Autor: Shinja Strasser Artikel Drucken
        
Namesausblendung in C#

Die Methodennamen in C# werden nicht auf der Grundlage
der Methodensignatur verborgen, sondern auf den Namen der Methode !!!

***********************************************************

using System;

public class ErsteKlasse
 {
   public int Funktion(int val)
   {
     Console.WriteLine("Klasse1.Funktion - {0}", val);
   }
 }

public class ZweiteKlasse:ErsteKlasse
 {
   public int Funktion(string val)
    {
      Console.WriteLine("Klasse2.Funktion - {0}", val);
    }
 }

class TestKlasse
{
 public static void Main()
  {
    ZweiteKlasse KL2 = new ZweiteKlass();
    KL2.Funktion("Das funktioniert");
    KL2.Funktion(7);   // Hier tritt ein Fehler auf !!!         
                                  // Was muss ich jetzt machen ??? 
    ((ErsteKlasse) KL2).Funktion(7); // jetzt gehts !!!
  }
}

*********************************************************************

Was ist passiert ?
Die beiden Funktionen >>Funktion(int val), Funtion(string val)<< befinden sich in unterschiedlichen
Klassen.
Die in der abgeleiteten Klasse >>ZweiteKlasse<< definierte Funktion >>Funktion()<< wird in der
BasisKlasse >>ErsteKlasse<< an allen Stellen ausgeblendet.
Eine (wenn nötige) Lösung wäre die Überladung.


DevTrain Camp - Schneller zum .NET 3.5 Developer
 
Verwandte Artikel      Verlinkte Dokumente
    Keine verknüpften Dokumente
    Keine Links vorhanden

  Erfasst am: 02.03.2001
  Gültig bis: 01.04.2001
0 Ratings
Bewertung: 0,0%
schlecht    sehr gut  

 
© Copyright 2007 ppedv AG