What are Explicit Null Checks for?

I’m making a build of my game and noticed the ‘Explicit Null Checks’ tick-box in the build settings.

What does it do?

When should it be enabled and when should it not?

Simply put. IF you have this set to true, your game will crash when it hits a null object. If it is set to false, your game will attempt to continue to run.

ideally a good programmer makes null checks everywhere that is necessary, and some places it would be redundant, but redundancy is good in programming. However, a programmer can’t account for EVERYTHING, or forgets things, so sometimes null references still occur. This option exists to let the developer how to decide to handle those exceptions during runtime.