Which OO basics is used by the Singleton pattern code example

Example 1: singleton

Singleton Design Pattern is basically limiting our class so that 
whoever is using that class can only create 1 instance from that class.
       
I create a private constructor which limits access to the instance of the class.
Than I create a getter method where we specify how to create&use the instance.
    - I am using JAVA Encapsulation OOP concept.

Example 2: singelton code

using UnityEngine;

public class SingeltonObject : MonoBehaviour
{

    void Awake()
    {
        SetUpSingelton();   
    }

    private void SetUpSingelton()
    {
        if (FindObjectsOfType(GetType()).Length > 1)
        {
            Destroy(gameObject);
        }
        else
        {
            DontDestroyOnLoad(gameObject);
        }
    }
}

Tags:

Misc Example