⊗jsOpIhPtM 37 of 60 menu

Métodos protegidos en POO en JavaScript

Los métodos privados no se heredan y no son visibles desde fuera de la clase. Sin embargo, a veces se necesitan métodos que se heredan, pero no son visibles desde fuera de la clase. Estos métodos se llaman protegidos (protected). JavaScript, desafortunadamente, no soporta tales métodos.

Por lo tanto, propongo introducir un convenio que permita crear tales métodos. Comenzaremos los nombres de estos métodos con un guión bajo. En realidad utilizaremos el antiguo convenio generalmente aceptado sobre métodos privados. Solo que llamaremos a estos métodos protegidos como señal de que se heredan, pero no los usaremos desde fuera. Por cierto, así es exactamente como se aplican según el antiguo convenio.

Entonces, escribamos una clase padre con un método protegido:

class User { setName(name) { this.name = name; } getName() { return this._capeFirst(this.name); } _capeFirst(str) { return str[0].toUpperCase() + str.slice(1); } }

Utilicemos este método protegido en la clase hija:

class Student extends User { setSurn(surn) { this.surn = surn; } getSurn() { return this._capeFirst(this.surn); } }

En el siguiente código, haga que el método auxiliar sea protegido:

class User { setName(name) { if (this._notEmpty(name)) { this.name = name; } } getName() { return this.name; } _notEmpty(str) { return str.length > 0; } } class Employee extends User { setSurn(surn) { if (this._notEmpty(surn)) { this.surn = surn; } } getSurn() { return this.surn; } }
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar