По-видимому, существует очень компактный способ сделать это:
constructor(private router: Router) {}
ngOnInit() {
console.log('configured routes: ', this.router.config);
}
Можно также проверить на существование определенного метода, даже не инстанцируя класса
echo method_exists( bob, 'yippie' ) ? 'yes' : 'no';
Если Вы хотите пойти один шаг вперед и проверить, что "хиппи" на самом деле статичен, используйте API Reflection (только PHP5)
try {
$method = new ReflectionMethod( 'bob::yippie' );
if ( $method->isStatic() )
{
// verified that bob::yippie is defined AND static, proceed
}
}
catch ( ReflectionException $e )
{
// method does not exist
echo $e->getMessage();
}
или, Вы могли объединить два подхода
if ( method_exists( bob, 'yippie' ) )
{
$method = new ReflectionMethod( 'bob::yippie' );
if ( $method->isStatic() )
{
// verified that bob::yippie is defined AND static, proceed
}
}
bool class_exists( string $class_name [, bool $autoload ]
)
Эта функция проверяет, был ли данный класс определен.