Skip to content

CSharp Members

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

Поля, властивості, індексатори та модифікатори

Посібник C# · Приклади UO

public, private, protected, internal, protected internal і private protected задають доступність. static відноситься до типу, readonly обмежує запис поля, const задає константу. Властивість використовує get, set або init; індексатор надає доступ через [].

Простий приклад (Example.cs)

Збережіть цей приклад окремо як Example.cs. Запускайте його незалежно від інших прикладів на сторінці.

Example.cs:

// PROJECT-EXAMPLE
var item = new Item();
item.Count = 7;
System.Console.WriteLine(item.Count);
class Item { public int Count { get; set; } }

Результат:

7
sealed class Config
{
    private int delay = 100;
    public string Name { get; init; } = "default";
    public int Delay
    {
        get => delay;
        set => delay = Math.Clamp(value, 0, 5000);
    }
}

var config = new Config { Name = "Gather", Delay = 150 };
await WaitAsync(config.Delay);
UO.Print(config.Name);
sealed class Counters
{
    private readonly Dictionary<string, int> values = new();
    public int this[string name]
    {
        get => values.TryGetValue(name, out int value) ? value : 0;
        set => values[name] = value;
    }
}

var counters = new Counters();
counters["items"] = 3;
UO.Print(counters["items"].ToString());

required вимагає заповнити член під час створення об'єкта. Ініціалізатори об'єктів та колекцій не замінюють перевірки допустимих ігрових значень. Часткові типи partial об'єднують кілька оголошень під час компіляції одного проекту.

Офіційна документація: Поля, властивості, індексатори та модифікатори – Microsoft Learn.

Clone this wiki locally