Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Throwable - Classe ou Interface | Error/Exception herda de Throwable?

Olá pessoal.

Na documentação do PHP sobre Throwable há a seguinte representação desta interface:

class Throwable {
/* Métodos */
public getMessage(): string
public getCode(): int
public getFile(): string
public getLine(): int
public getTrace(): array
public getTraceAsString(): string
public getPrevious(): ?Throwable
abstract public __toString(): string
}

Link: https://www.php.net/manual/pt_BR/class.throwable.php

Com base nesta representação, gostaria de saber se Error e Exception são classes que herdam de Throwable, visto que essas classes possuem esses mesmos métodos.

A documentação também se refere à Throwable como Interface, mas isso não quer dizer que seja a interface descrita neste documento, certo? https://www.php.net/manual/pt_BR/language.oop5.interfaces.php

Obrigada!

2 respostas
solução!

Oi Natalia, tudo bem?

Com base nesta representação, gostaria de saber se Error e Exception são classes que herdam de Throwable, visto que essas classes possuem esses mesmos métodos.

Error e Exception implementam a interface Throwable, por isso elas tem os memos métodos descritos em Throwable.

A documentação também se refere à Throwable como Interface, mas isso não quer dizer que seja a interface descrita neste documento, certo? https://www.php.net/manual/pt_BR/language.oop5.interfaces.php

O conceito é o mesmo, a diferença é que a interface Throwable é uma interface "especial", pois, é uma interface interna da linguagem e não podemos implementa-la em nossos programas.

Ficou mais claro? Qualquer dúvida estou à disposição.

Show. Obrigada Diego!