Se puede tener atributos o métodos de tipo private o protected implementando una interface? Lo digo porque al intentarlo me sale error, y...

Pregunta de la clase:
Interfaces
Víctor Andrés Córdova Poma

Víctor Andrés Córdova Poma

Pregunta
studenthace 3 años

Se puede tener atributos o métodos de tipo private o protected implementando una interface? Lo digo porque al intentarlo me sale error, y me dice que la interface no tiene esa propiedad o método en la interface de tipo private o protected. Sin embargo, al colocar el tipo dentro de la interface me sale error, ya que no puede ser colocado en la interface.

2 respuestas
para escribir tu comentario
    Daniel Camacho

    Daniel Camacho

    studenthace 2 años

    normalmente los metodos en las interfacces el modificador no va private, ya que se espera que la implementacion la hagan en otro archivo,en su mayoria son publicos ya que se crean con la finalidad de que lo implementen varios paquetes de clases o por fuera de arboles de herencia, por eso no es usual definirlo como protected o private, existe un modificador default que te permite ahcer la implementacion en el mismo, pero no se en ts como seria

    Víctor Andrés Córdova Poma

    Víctor Andrés Córdova Poma

    studenthace 3 años

    Al parecer solo se puede resolver ese problema usando clases abstractas.

    abstract class Base { protected abstract getName(name: string): string; protected abstract height: number; } class Derived extends Base { constructor ( protected height: number = 5, ) { super(); } protected getName(name: string) { return "world" + name; } }
Curso de TypeScript: Programación Orientada a Objetos y Asincronismo

Curso de TypeScript: Programación Orientada a Objetos y Asincronismo

Aprende a desarrollar aplicaciones robustas con TypeScript, enfocándote en programación orientada a objetos y asincronismo. Implementa conceptos avanzados como clases, promesas y genéricos para manejar datos de APIs eficazmente.

Curso de TypeScript: Programación Orientada a Objetos y Asincronismo
Curso de TypeScript: Programación Orientada a Objetos y Asincronismo

Curso de TypeScript: Programación Orientada a Objetos y Asincronismo

Aprende a desarrollar aplicaciones robustas con TypeScript, enfocándote en programación orientada a objetos y asincronismo. Implementa conceptos avanzados como clases, promesas y genéricos para manejar datos de APIs eficazmente.