Web Log di Adrian Florea

"You know you've achieved perfection in design, not when you have nothing more to add, but when you have nothing more to take away." Antoine de Saint-Exupery
posts - 440, comments - 2715, trackbacks - 3944

My Links

Archives

Post Categories

Image Galleries

.RO Blogs

.RO People

.RO Sites

Blogs

Furls

Links

vinCitori

Proprietà read-only e setter

La proprietà Length di System.IO.Stream e di tutte le sue classi derivate non è l'unica proprietà read-only per cui esiste nella stessa classe un metodo setter ma lo sono anche le proprietà In, Out ed Error della classe System.Console:

public sealed class Console
{
  //...

  private static TextReader _in;
  public static TextReader In
  {
    get
    {
      //...
    }
  }
  public static void SetIn(TextReader newIn)
  {
    //...
  }

  private static TextReader _out;
  public static TextReader Out
  {
    get
    {
      //...
    }
  }
  public static void SetOut(TextWriter newOut)
  {
    //...
  }

  private static TextWriter _error;
  public static TextReader Error
  {
    get
    {
      //...
    }
  }
  public static void SetError(TextWriter newError)
  {
    //...
  }

  //...
}

Ho verificato via reflection che questi sono gli unici casi all'interno del Framework di proprietà read-only pubbliche con setter pubblico nella stessa classe pubblica. Secondo me è interessante questa scelta progettuale.

Print | posted on lunedì 28 giugno 2004 13:32 | Filed Under [ Carillon .NET Pattern Dappertutto ]

Powered by:
Powered By Subtext Powered By ASP.NET