Condividi tramite


Errore del compilatore CS1721

La classe 'classe' non può contenere più classi base: 'classe_1' e 'classe_2'

La causa più comune di questo messaggio di errore è il tentativo di usare l'ereditarietà multipla. Una classe in C# può ereditare direttamente da una sola classe. Un classe può tuttavia implementare un numero indefinito di interfacce.

Esempio

L'esempio seguente mostra un modo in cui si genera l’errore CS1721:

// CS1721.cs
public class A {}
public class B {}
public class MyClass : A, B {}   // CS1721

Per correggere l'errore

Di seguito sono riportati diversi modi per correggere tale errore:

  • Far ereditare la classe B da A, e la MyClass da B:

    public class A {}
    public class B : A {}
    public class MyClass : B {}
    
  • Dichiarare B come interfaccia. Far ereditare MyClass dall'interfaccia B e dalla classe A:

    public class A {}
    public interface B {}
    public class MyClass : A, B {}
    

Vedi anche