using UnityEngine; using UnityEngine.EventSystems; public abstract class BaseScene : MonoBehaviour { public Define.Scene _sceneType { get; protected set; } = Define.Scene.Uknown; void Start() { Init(); } // virtual은 가상메서드로 추후 자식클래스에서 해당 메서드를 재정의(오버라이딩)할 수 있다. // 반드시 재정의할 필요는 없다. protected virtual void Init() { Object obj = FindFirstObjectByType(); if (obj == null) Managers.Resource.Instantiate("UI/EventSystem").name = "@EventSystem"; } // abstract는 추상메서드로 추후 자식클래스에서 반드시 해당 추상 메서드를 구현해야 하며 // 현재 이 클래스에서도 abstract 키워드를 사용해서 선언해야 한다. // 즉 구현부가 없이 오로지 선언만 있다. public abstract void Clear(); }