Fala Anderson, beleza?
Então cara, sempre que tua aplicação iniciar ela vai dá o start no autoload daí a mágica acontece quando você instância uma nova classe no seu código, exemplo:
$newClasse = new ClasseNome();
Daí ali aonde está $namespace na função load vai entrar o nome da classe e por isso é importante manter o nome do arquivo igual ao nome da classe.
Daí dentro do load você busca a classe (o arquivo) e se ele existir você inclui ele, ou seja, injeta ele para que seja utilizado os métodos da classe importada.
Em termos práticos é como se tu executasse a função passando o nome do arquivo, exemplo:
function load($class){
// Código de busca e inclusão da classe
// exemplo GENÉRICO
$filename = __DIR__ . "/app/classes/" . $class . ".php";
$erro404 = __DIR__ . "/app/error/404.php";
if(file_exists($filename)
include ($filename);
else
include ($erro404);
}
// Por trás dos panos o PHP vai fazer isso sempre que uma nova classe for instanciada.
load("ClassName");
Entendeu?
Cara eu recomendo fortemente que você utilize o autoload do composer, ele implementa a PSR-4 e é mais seguro fora que vai te economizar tempo na hora de fazer a implementação e meu amigo, tempo é dinheiro.
Autoload com composer