Imagem de fundo

Um Tribunal está desenvolvendo um sistema interno para...

Um Tribunal está desenvolvendo um sistema interno para controle de audiências usando TypeScript. Existe uma classe Session com o método start (), mostrada abaixo. Posteriormente, foi criada a classe virtualSession, que deveria especializar Session e sobrescrever start (). Contudo, o método start() de VirtualSession não substitui o de Session como esperado.


class Session {

start () {

console.log("Starting physical session...");

}

}

class VirtualSession extends Session {

start: () => {

console. log("Starting virtual session via video call...");

}

}

const session = new VirtualSession();

session.start ();


O método start () de VirtualSsession não sobrescreveu corretamente o de session porque


A

faltou marcar o método start () com a palavra-chave Override.


B

houve erro de tipagem no parâmetro do construtor.


C

seria obrigatório usar super.start () na subclasse VirtualSession.


D

o TypeScript não permite sobrescrever métodos sem decoradores.


E

start foi reatribuído como uma propriedade, e não redefinido como método.