Saludos,
 
Estoy comenzando a meterme de lleno con PHP5 y estoy leyendo sobre el manejo de Excepciones con la clase Exception, sin embargo estoy haciendo ejemplos sencillos como el que mostraré a continuación y siempre me muestra el error propio que devuelve PHP mas no el mío que estoy pasando mediante el código, quisiera saber que estoy haciendo mal?  
 Código PHP:
    <?php
 
    class calc extends Exception{
    
        protected $num1;
        protected $num2;        
    
        static function division($resultado){
        
            $resultado = $num1 / $num2;
            
            if($resultado < 0){
                throw new Exception('ERROR: Division entre 0.');
            } else {
                return $resultado;
            }
        }
    }
    
    try{
        calc::division(2,0);
    }catch(Exception $ex){
        echo $ex->getMessage();
    }
 
?>    
  En este ejemplo trato de dividir entre 0, pero cuando ejecuto el código me muestra el error: 
Warning: Division by zero in C:\wamp\www\curso\errores\calc.php on line 10 cuando creo que debería mostrar el mensaje personalizado 
ERROR: Division entre 0. 
Gracias de antemano.