Clases, objetos e instancias

Me di cuenta de la confusión a menudo cuando se trata de clases, objetos e instancias. Los que no son muy educados en la programación orientada a objetos a menudo se confunde el verdadero significado de estos términos. Sabía, sin embargo, que hay dos escuelas de pensamiento acerca de la definición de clases y objetos. Me gusta la "escuela" que indica la definición de clase como sujeto posible, y por lo tanto, como una instancia del objeto.

Parece trivial, pero he I - hablar con los demás - a estar en "conflicto" (por así decirlo) y luego caer en la confusión, cuando se utilizan estos términos, a partir de la suposición de que en todo caso el "otro" del mismo modo que ellos pretenden .

Yo lo veo de esta manera, una clase es una definición! Es precisamente define una clase de objetos posibles. La clase es el conjunto de métodos y propiedades (si quieres también podemos añadir eventos - ¿qué otra cosa ... no sólo que los métodos especiales) que será el propietario del objeto.

Por ejemplo, cuando escribimos en Actionscript, o cualquier otro lenguaje orientado a objetos:

1
2
3
4
class MiClase {
MiaClass función () {}
miMetodo function () {}
}

Hemos definido una clase y no un objeto. En el límite que tenemos ", definido" a "posible" objeto. Incluso, podría argumentar, con razón, que el objeto existe en tiempo de ejecución, mientras que la clase no (en realidad no son clases dinámicas que se pueden definir - y luego se utiliza para crear objetos - incluso en tiempo de ejecución). Excluir a las clases estáticas, por supuesto, que - al final - no son más que sub-casos (o instancias ocultas) y luego los objetos reales.

Pero cuando se tiene:

1
MiaClasse = new MiaClasse ( ) ; var myObject: MiClase = new MyClass ();

! Aquí mioOggetto es una instancia de MiaClasse() ! . Que mioOggetto es un tema - de hecho - de tipo MiaClasse() .

. Como resultado de ello, su filosofía a los objetos, los objetos de tipo MiaClasse() que puede tener tanto como yo quiero, que no puede ser - la definición misma - de MiaClasse() . Por ejemplo, si el informe es cierto y tiene sentido:

1
2
3
4
5
MiaClasse = new MiaClasse ( ) ; var mioOggetto_1: MiClase = new MyClass ();
MiaClasse = new MiaClasse ( ) ; var mioOggetto_2: MiClase = new MyClass ();
MiaClasse = new MiaClasse ( ) ; var mioOggetto_3: MiClase = new MyClass ();
...
MiaClasse = new MiaClasse ( ) ; var mioOggetto_n: MiClase = new MyClass ();

No tiene ningún sentido:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
class MiClase {
MiaClass función () {}
MioMetodo_2 function () {}
}

class MiClase {
MiaClass función () {}
MioMetodo_2 function () {}
}

class MiClase {
MiaClass función () {}
MioMetodo_3 function () {}
}

Instancia de objeto y, por tanto, coinciden y se utilizan alternativamente para el mismo significado en diferentes contextos.

Probablemente a nadie le importa ... no mucho la cuestión de la integridad de los requisitos ... :)

2 comentarios para "Clases, objetos y, a instancias"

  1. 03 de septiembre 2008 ActionScript 3.0 para principiantes: lección # 2 | Undolog.com :

    [...] Si se trata de programación orientada a objetos en seco, te recomiendo leer por lo menos las clases, objetos e instancias! [...]

  2. 11 de noviembre 2008 ActionScript 3.0 para principiantes: lección # 4 | Undolog.com :

    [...] Las variables estáticas o constantes se asocian a la clase y la instancia de la clase! Ver las clases, objetos e instancias. Esta es una diferencia importante, de hecho, si escribimos en nuestro caso - como una [...]

Deja un comentario

XHTML PERMISO TAG: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> código de inserción:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL 


Dejar de SOPA