Unity范围和访问修饰符介绍和用法示例

变量的范围是代码中变量可以使用的区域。变量应该在可以使用的代码中位于本地。代码块通常定义变量的范围, 并用花括号表示。
访问修饰符是关键字。这些修饰符用于指定成员或类型的声明的可访问性。 C#中有四个访问修饰符:

  • public
  • protected
  • internal
  • private
可以在C#中使用访问修饰符指定以下六个可访问性级别:
public:在这种情况下, 访问不受限制。
protected:这里, 访问仅限于包含它的类。
internal:在这种情况下, 访问仅限于当前程序集。
protected internal:此访问仅限于当前程序集。
private:访问仅限于包含类型。
private protected:为此访问仅限于包含类或从当前程序集中包含类派生的类型。
例:
在此示例中, 该类中的所有内容都可以说是该类的本地内容。蜡笔, 钢笔和答案变量均位于示例函数的本地, 不能在外部使用。你会说变量beta, alpha和gamma在scope和access修饰符类的范围内。你会说蜡笔, 钢笔和答案变量在示例函数的范围内。
MyClass.cs
using System.Collections; using System.Collections.Generic; using UnityEngine; public class MyClass { public int apples; public int bananas; private int stapler; private int sellotape; public void FruitMachine(int a, int b) { int answer; answer = a + b; Debug.Log("Fruit total: " + answer); }private void OfficeSort(int a, int b) { int answer; answer = a + b; Debug.Log("Office Supplies total: " + answer); } }

AccessModifiers.cs
using System.Collections; using System.Collections.Generic; using UnityEngine; public class AccessModifiers : MonoBehaviour { public int alpha = 5; private int beta = 0; private int gamma = 5; private MyClass myOtherClass; void Start() { alpha = 29; myOtherClass = new MyClass(); myOtherClass.FruitMachine(alpha, myOtherClass.apples); }void Example(int pens, int crayons) { int answer; answer = pens * crayons * alpha; Debug.Log(answer); }void Update() { Debug.Log("Alpha is set to: " + alpha); } }

输出
【Unity范围和访问修饰符介绍和用法示例】当你运行游戏时, 你会看到公共变量alpha包含为你可以编辑的属性。这允许用户在运行游戏时编辑变量。例如, 想象一下, 该值控制着汽车的速度, 并且能够在测试该变量而不必停车的情况下对其进行调整会很好。因此, 将其设为公共变量是有意义的。
Unity范围和访问修饰符介绍和用法示例

文章图片
Unity范围和访问修饰符介绍和用法示例

文章图片
Unity范围和访问修饰符介绍和用法示例

文章图片
在这里, 我在运行时将Alpha变量的值更改为67, 然后输出为:
Unity范围和访问修饰符介绍和用法示例

文章图片

    推荐阅读