Несмотря на то, что ответ @TheGeneral содержит решение и указывает вам больше документации для изучения ООП. Я думаю, что лучше дать объяснение , почему ваш код не работал.
Все в ООП имеет область действия (определенную "область", где она доступна), что, для большинства вещей в ООП, огорожена скобками. В этом случае область действия основана на конструкторе, который позволяет переменным, объявленным в скобках, быть доступными только внутри скобок. За исключением случаев, когда вы используете «внешнюю» ссылку, такую как переменная класса или свойство.
public class Example
{
// this is a class variable, this variable is now reachable from outside the class
// definition.
public int aClassVariable;
// this is a class property which because we added the get and set calls generate
// automatically an get and set method (internally)
public bool aClassProperty { get; set; }
public Example()
{
// to set the class variable and property you just give them a value.
aClassVariable = 42;
aClassProperty = true;
// this variable is not available outside the scope of this function,
// this is because you declared the variable inside this function.
// So the variable is only available inside this function as long as this
// function runs (or as it is called "is in scope").
int[] arr = new int[10];
}
}
Также обратите внимание на различия между переменными и свойствами, переменная - это то, что содержится в каждом языке ООП. Но свойства на самом деле являются расширением для переменных, где доступ и настройку можно изменить с помощью определения метода get и set.
Я бы настоятельно рекомендовал прочитать документацию, связанную с ответом Общее , поскольку оно содержит гораздо больше информации о тонкостях ООП и самого C #.