Unity_雜項_訪問修飾符在Unity監控面板的表現_050
阿新 • • 發佈:2019-02-03
不同的訪問修飾符在程式中的訪問許可權是不同的,在Unity面板中的表現也是不一樣的,下面我們通過程式來看一下訪問修飾符在Unity監控面板中的表現
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Visit : MonoBehaviour
{
//具有公開許可權的欄位可以出現在Inspector面板上
public int num1 = 10;
//如果在宣告欄位的時候沒有賦值 那麼預設值是0
public int num2;
//隱藏公有欄位 表示將原本顯示在面板上的序列化值隱藏起來。
[HideInInspector]
public int num3 = 20;
//私有的欄位不會出現在Inspector面板上
private int age;
//[SerializeField]表示將原本不會被序列化的私有變數和保護變數可以序列化,這麼他們在下次讀取時,就是你上次賦值的值。
[SerializeField]
private char gender;
//受保護的欄位 通過序列化也可以出現在面板上
[SerializeField]
protected string hobby;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
序列化 (Serialization) 源自百度百科:http://baike.baidu.com/view/160029.htm?fr=aladdin
將物件的狀態資訊轉換為可以儲存或傳輸的形式的過程。在序列化期間,物件將其當前狀態寫入到臨時或永續性儲存區。以後,可以通過從儲存區中讀取或反序列化物件的狀態,重新建立該物件。
說的再直接點,序列化的目的就是為了跨程序傳遞格式化資料
[HideInInspector]表示將原本顯示在面板上的序列化值隱藏起來。
[SerializeField]表示將原本不會被序列化的私有變數和保護變數可以序列化,這麼他們在下次讀取時,就是你上次賦值的值。