でたらめな概要

OnValidate() スクリプトがロードされたとき、またはインスペクターで値が更新されて時に呼ばれる、
インスペクター上で色々編集する機能を作るのに便利な関数です。
しかし、これはエディター専用関数なので#if UNITY_EDITORで囲う必要があります。

Packageの方で見たUIBehaviourもしっかり #if UNITY_EDITOR で囲まれてました。
しかしスーパークラスのvirtualが付いている関数が #if で囲まれていると
ホントにビルドするまでエラーに気が付かないですね・・・。

気が付く何か良い方法はないかしら。

参考にさせていただいたサイト様

MonoBehaviour-OnValidate() – Unity スクリプトリファレンス (unity3d.com)

Unity – Scripting API: MonoBehavior.OnValidate() (unity3d.com)