Actualizado el 21 de Marzo del 2018 (Publicado el 28 de Febrero del 2018)
609 visualizaciones desde el 28 de Febrero del 2018
58,1 KB
1 página
Ámbitos public, private, protected y local
El tema que vamos a tratar ahora es uno de los mayores dolores de cabeza cuando se comienza con la programación y más aún con la programación
orientada a objetos, muchos problemas en el código suelen estar asociados con algún error a nivel de ámbito, así que comencemos por allí:
¿Qué es el Ámbito y cómo afecta mi vida sexual?
Cuando hablamos de ámbito o alcance nos estamos refiriendo principalmente al área de influencia de una variable o función, a la zona donde ésta tiene
sentido.
Toda variable/función tiene un rango de acción, se encuentra en un sitio, tiene un contexto, fuera del cual pierde significado y valor. Un ejemplo que puede
ilustrar esto puede ser un lámpara. La lámpara, al encenderla, ilumina un área específica, pero no tiene influencia fuera de esa área. Por ejemplo: si necesito
buscar algo en mi cuarto, que la luz de la sala o de la cocina estén encendidas sería irrelevante para mí porque mi cuarto está fuera del área que ellas
iluminan, pero si enciendo la luz de mi cuarto puedo buscar lo que necesito más claramente, aunque no tendría ninguna influencia fuera de él, él ámbito
(alcance) de esa luz se limita a mi cuarto.
De acuerdo con su ámbito una variable/función puede ser:
Pública
Privada
Protegida
Local
Vamos a hablar de estos ámbitos desde el punto de vista de la clase.
Public:
Una variable/función pública puede ser accedida desde fuera de la clase. Es decir, puedo acceder desde la instancia de la clase y no sólo desde el código
interno de la clase. Ejemplo de funciones públicas son los métodos de una clase. También es posible crear variables públicas, para que puedan ser
manejadas desde la instancia, pero no es algo común o recomendable, entre otras cosas porque deja un hueco de seguridad en la clase, acabando con la
idea de la “encapsulación”. Para declarar una variable/función como pública, se le antepone la palabra clave “public”.
Private:
Al contrario que las públicas, las variables/funciones privadas sólo pueden ser accedidas desde dentro de la misma clase. Todo intento de llamarlas desde la
una instancia de la misma es en vano. Mantener variables/funciones privadas permiten tener un mayor control sobre la clase, sobre el modo como procesa
sus métodos, como maneja sus variables, etc. Para declarar una variable/función como privada, se le antepone la palabra clave “private”.
Protected:
Existe un tipo intermedio de ámbito, llamado “protegido”. Es un punto medio entre público y privado, porque como ocurre con las privadas no se puede
acceder a ella desde una instancia de la clase, pero como ocurre con las públicas puede ser accedido desde las subclases de ésta, no importa si se
encuentran o no en el mismo paquete. Básicamente significa que, si una clase hereda de otra, tendrá acceso a las variables/funciones protegidas de la
superclase, de lo contrario, no podrá acceder a ellas. Para declarar una variable como protegida, se le antepone la palabra clave “protected”.
Local:
Una variable “local” sólo es accesible desde dentro de la función donde se declara; esto es válido tanto para los parámetros de la función como para las
variables declaradas dentro de ella. Una vez terminada la función, la variable es destruida hasta que la función vuelve a ser invocada. No hay palabras clave
para las variables locales.
¿Cómo Afecta esto mi Vida Sexual?
Como dije, una buena parte de los problemas que la gente suele tener al trabajar con clases es comprender cómo funcionan los ámbitos, cómo acceder a
funciones/propiedades/variables y como permitir a otros que accedan a las nuestras; por lo tanto, entender esto significa perder menos horas depurando
código, lo que significa menos tiempo programando, lo que es igual a menos frustración por falta de tiempo para el sexo. Además a las chicas les encantan
los buenos programadadores ;)
Blog Foros Tutoriales Tutoriales de Flash Ejemplos .fla Anime Videotutoriales Cursos Curso de Flash Curso de HTML Tags
Comentarios de: Ámbitos public, private, protected y local (0)
No hay comentarios