Załóżmy, że masz dwie różne klasy C# A
i B
, które nie wywodzące się z tej samej klasy bazowej mają takie same nazwy dla metod. Na przykład obie klasy mają metodę connect
i disconnect
, a także kilka innych. Chcę móc napisać kod, który będzie działać z obydwoma typami.Kod C# do obsługi różnych klas o tych samych nazwach metod
Oto uproszczony przykład tego, co chciałbym zrobić:
public void make_connection(Object x)
{
x.connect() ;
// Do some more stuff...
x.disconnect() ;
return ;
}
Oczywiście, to nie skompilować jako klasa obiektu nie ma metody connect
lub disconnect
.
Czy istnieje sposób, aby to zrobić?
AKTUALIZACJA. Powinienem był to jasno powiedzieć od samego początku: mam tylko biblioteki DLL dla A i B, a nie źródła.
Jest to dość dużo jak każdy uczy się, jak cenna jest konstrukt interfejs. Naprawdę musisz trafić w sytuację, w której są one przydatne, zanim je "zdobędziesz". –