ein Projekt von goloroden.de

readonly

Allgemeines

Kennzeichnet ein Feld als schreibgeschützt, das heißt, dass sein Wert nur bei seiner Definition oder im Konstruktor geändert werden kann.

Beipiel

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
using System;

namespace GoloRoden.GuideToCSharp
{
    /// <summary>
    /// Represents a point that is fixed in space.
    /// </summary>
    public class FixedPoint
    {
        /// <summary>
        /// Contains the X coordinate.
        /// </summary>
        private readonly double _x;

        /// <summary>
        /// Contains the Y coordinate.
        /// </summary>
        private readonly double _y;

        /// <summary>
        /// Gets the X coordinate.
        /// </summary>
        /// <value>The X coordinate.</value>
        public double X
        {
            get
            {
                return this._x;
            }
        }

        /// <summary>
        /// Gets the Y coordinate.
        /// </summary>
        /// <value>The Y coordinate.</value>
        public double Y
        {
            get
            {
                return this._y;
            }
        }

        /// <summary>
        /// Initializes a new instance of the FixedPoint
        /// type.
        /// </summary>
        /// <param name="x">The X coordinate.</param>
        /// <param name="y">The Y coordinate.</param>
        public FixedPoint(double x, double y)
        {
            this._x = x;
            this._y = y;
        }
    }
}

Details

Im Gegensatz zu const kann einem Feld, das mit dem Schlüsselwort readonly gekennzeichnet wurde, so wohl bei seiner Definition wie auch im Konstruktor ein Wert zugewiesen werden. Bei const ist das nur bei der Definition möglich. const definiert also eine Konstante zur Übersetzungszeit, readonly eine Konstante zur Laufzeit.

Siehe auch (Referenz)

Siehe auch (Guide)