Например, в этом классе и Имя, и Описание могут быть назначены в конструкторе, но только там, что именно так описываются свойства, доступные только для инициализации.
Пример класса
Код: Выделить всё
class Thingy {
public Thingy(string name, string description){
Name = name;
Description = description;
}
public string Name { get; }
public string Description { get; }
public override string ToString()
=> $"{Name}: {Description}";
}
Код: Выделить всё
using System;
class Program {
public static void Main (string[] args) {
var thingy = new Thingy("Test", "This is a test object");
Console.WriteLine(thingy);
// thingy.Name = “Illegal”;
Подробнее здесь: [url]https://stackoverflow.com/questions/64749277/in-c9-how-do-init-only-properties-differ-from-read-only-properties[/url]