Как работают автоматические свойства get;set в c#? Читаю книжку и дошёл до автоматических свойств. Вот например: public int Age {get;set} Свойства нужны для инкапсуляции private переменных, что бы их можно было изменять, но я не понял синтаксис, мы же пишет public. Перечитал главу в книге, так и не понял, почему записывается public а компилятор думает то что это private.
Автоматические свойства в C# позволяют создать свойства класса без явного определения private переменной, которая будет использоваться для хранения значения. Когда вы объявляете автоматические свойства с помощью синтаксиса:
public int Age { get; set; }
Компилятор автоматически создает private переменную для хранения значения, но ее название остается скрытым. Таким образом, когда вы обращаетесь к свойству Age извне класса, компилятор предполагает, что это public доступ к переменной Age, хотя на самом деле работа идет через сгенерированное private поле.
Это позволяет быстро создавать свойства без явного определения private переменных и упрощает синтаксис в тех случаях, когда вам нужно просто получать и устанавливать значения. Но помните, что использование автоматических свойств ограничено и в некоторых случаях может потребоваться явное определение private переменной для более сложной логики доступа к данным.
Автоматические свойства в C# позволяют создать свойства класса без явного определения private переменной, которая будет использоваться для хранения значения. Когда вы объявляете автоматические свойства с помощью синтаксиса:
public int Age { get; set; }Компилятор автоматически создает private переменную для хранения значения, но ее название остается скрытым. Таким образом, когда вы обращаетесь к свойству Age извне класса, компилятор предполагает, что это public доступ к переменной Age, хотя на самом деле работа идет через сгенерированное private поле.
Это позволяет быстро создавать свойства без явного определения private переменных и упрощает синтаксис в тех случаях, когда вам нужно просто получать и устанавливать значения. Но помните, что использование автоматических свойств ограничено и в некоторых случаях может потребоваться явное определение private переменной для более сложной логики доступа к данным.