赤兎ラボ

コーディングからバージョン管理、業務効率化までをまとめます。

Unity private変数をインスペクタに表示したい

方法

private変数をインスペクタに表示したい場合、以下のようにSerializeFieldの宣言を行います。

[SerializeField] private Class value;

また、public変数をインスペクタに表示したくない場合は以下のように書きます。

[HideInspector] private Class value;

 

スコープ・カプセル化という概念

 

private・publicという宣言が何故存在しているかというと、別クラスから使用して良いものを区別するためです。

内部的に使っているものはprivate。外部からアクセスできません。

外部から使って欲しいもの、使って良いものはpublic。

この区別があるだけで、別クラスを実装する時に連携して使用しやすいクラスになります。

 

初期値を設定したいだけでpublic変数を用意することは別クラスからアクセスできる可能性を生む危険な行為です。