Sobes.tech
Junior — Middle

Kas on võimalik liidese kaudu deklareerida muutujad või väljad?

sobes.tech AI

Vastus AI-lt

C# keeles ei saa liideste hulka tavapäraseid muutujaid või välju deklareerida, kuna liides määratleb ainult lepingu — meetodite, omaduste, sündmuste ja indeksijate kogumi ilma rakendamiseta.

Kuid alates C# 8.0 versioonist saab liidetes deklareerida:

  • Konstantse (staatilise readonly välja initsialiseerimisega)
  • Staattilisi meetodeid koos rakendusega
  • Vaikimisi omadustega koos rakendusega

Kuid tavapäraseid, mitte-staatilisi välju liidetes deklareerida ei saa.

Näide konstantse liideses:

public interface IExample
{
    const int MaxValue = 100;
    void DoWork();
}