protected - доступ для этого класса и класса наследника
public - доступ для всех классов
static - для всех наследников одно значение (доступ через ИмяКласс.ИмяСтатическойПеременной)
public class MyParent {
public static string name = 'father';
static GetParentName () { Debug.Log("Parent name:" + name); // type of name is static } }
public class MyChild { MyParent.name = 'mother'; }
В статическом методе могут быть только статические свойства (переменные).
Конструктор
1. В статическом конструкторе не может быть параметров и модификаторов доступа. 2. В классе может быть два конструктора, первый с модификатором static (вызывается всегда) и второй с модификаторами (public, ...) вызывается только при создании экземпляра класса.
Если static указан в определении класса, то нельзя создать экземпляр такого класса.
public static class Utilites {
public static int Add(int num1, int num2) { return num1 + num2; } }
public Utilites ut = new Utilites(); //вызовет ошибку Cannot declare variables of static class