Thomas Darimont
Erfahrenes Mitglied
Hallo,
mit const kann man echte Konstante definieren, die auch tatsächlich bei der deklaration initialisiert werden müssen.
Bei allen als readonly deklarierten Membern kann man die Initialisierung direkt bei der Deklaration vornehmen.
Darüber hinaus kann man aber auch readonly Instanz-Member im Konstruktor wieder neu initialisieren und
readonly Class-Member (static) in einem entsprechendem statischen Konstruktor initialisieren.
Gruß Tom
mit const kann man echte Konstante definieren, die auch tatsächlich bei der deklaration initialisiert werden müssen.
Bei allen als readonly deklarierten Membern kann man die Initialisierung direkt bei der Deklaration vornehmen.
Darüber hinaus kann man aber auch readonly Instanz-Member im Konstruktor wieder neu initialisieren und
readonly Class-Member (static) in einem entsprechendem statischen Konstruktor initialisieren.
C#:
using System;
namespace De.Tutorials.Training
{
/// <summary>
///
/// </summary>
/// <author>Thomas.Darimont</author>
public class ReadOnly
{
protected readonly string SOME_CONSTANT ="FOO";
protected static readonly string SOME_CC = "1234";
static ReadOnly()
{
SOME_CC = "143";
}
public ReadOnly()
{
SOME_CONSTANT = "BAR";
}
//public void SomeEvilOperation(){
// SOME_CONSTANT = "XXX";
//}
public override string ToString(){
return SOME_CONSTANT + " " + SOME_CC;
}
public static void Main(string[] args)
{
Console.WriteLine(new ReadOnly());
}
}
}
Gruß Tom