Clase II Conceptos De Programaci N Orientada A Objetos

Páginas: 19 (4573 palabras) Publicado: 12 de agosto de 2015
Clase II - 10/08/2015

CLASIFICACIÓN DE LAS CLASES

Las clases pueden clasificarse según su:
Tipo
Visibilidad
Origen

Según su Tipo:
Contenedora
Control

Una clase es contenedora cuando puede tener a objetos de otras clases dentro suyo. Ejemplos de clases contenedoras son los formularios, los contenedores, los marcos de página, las grillas.

Una clase es de control cuando no puede contener aotra clase dentro suyo. Por lo tanto las clases de control no tienen el método AddObject(). No pueden agregarse un objeto.

Según su visibilidad:
Visible
No visible

Las clases visibles (ejemplos: formularios, etiquetas, grillas, imágenes) pueden verse en el monitor de la computadora. Las no visibles (ejemplos: timer, custom) no pueden verse, no hay forma de verlas.

Según su origen:
Basada en unaclase que no es del usuario
Basada en una clase del usuario

EJEMPLO Nº 1

En este ejemplo definiremos una clase llamada PERSONA (por claridad y legibilidad, los nombres de las clases se escriben en singular, nunca en plural)



EJEMPLO01.PRG
Local loNovia1, loNovia2
CLEAR
loNovia1 = CreateObject("PERSONA")
loNovia1.cNombre = "Marcela"
loNovia1.dFechaNacimiento = CtoD("07/10/1980")
loNovia2 =CreateObject("PERSONA")
loNovia2.cNombre = "Silvia"
loNovia2.dFechaNacimiento = CtoD("28/09/1988")
loNovia1.MostrarDatos()
loNovia2.MostrarDatos()
Release loNovia1, loNovia2
Return
*
*
DEFINE CLASS PERSONA AS CUSTOM
cNombre = Space(20)
cApellido = Space(20)
dFechaNacimiento = {}
PROCEDURE MostrarDatos
? This.cNombre, This.dFechaNacimiento
RETURN
ENDDEFINE
*
*
Explicación

Primero, se declararon dosvariables locales llamadas loNovia1 y loNovia2 respectivamente. La letra “l” inicial significa que es una variable local. La letra “o” que le sigue significa que es un objeto. No es necesario llamar así a las variables, también se las podría haber llamado Novia1 y Novia2 y hubiera funcionado perfectamente, pero es una convención que se utiliza para hacer más entendible al código fuente.
Luego se creaun objeto basado en la clase PERSONA que está definida al final del programa. A eso se le llama instanciar el objeto. Es importante recordar que las definiciones de clases siempre deben escribirse al final del programa. ¿Por qué? Porque el código que se escriba después de las definiciones de las clases nunca será ejecutado.
Después, se le asignan valores a las propiedades cNombre ydFechaNacimiento. Para referirse a una propiedad siempre hay que antecederla con el nombre del objeto al cual pertenece ¿por qué eso? Porque puede haber muchos objetos y clases distintos que tengan propiedades llamadas igual y el Visual FoxPro necesita saber a cuál de ellas nos estamos refiriendo. Por ese motivo, siempre hay que escribirlas de la forma:

Objeto.propiedad

A continuación se crea otro objetobasado en la clase PERSONA. Eso significa que con este objeto se pueden acceder a todas las propiedades y a todos los métodos que posee la clase PERSONA. Luego se le asignan valores a las propiedades del objeto recién creado.
Seguidamente se ejecuta un método del objeto. Ese método lo que hace es mostrar en la pantalla el contenido de dos propiedades del objeto. Al igual que con las propiedades,cuando queremos referirnos a un método debemos hacerlo escribiendo:

Objeto.método()

NOTA: Los paréntesis son opcionales, pero es mejor escribirlos para que el código sea más legible.
Alternativamente, en lugar de escribir:

loNovia1.MostrarDatos()

se pudo haber escrito:

? loNovia1.cNombre, loNovia1.dFechaNacimiento

Sin embargo, en una correcta POO la primera forma es mucho más preferible ¿por qué?porque todo lo que pueda realizarse dentro de un objeto debe realizarse dentro de ese objeto. Después se liberan los objetos de la memoria con la instrucción RELEASE. Cada vez que se crea un objeto éste ocupa un cierto espacio en la memoria. Si se lo terminó de usar y no se libera ese espacio entonces se está desperdiciando memoria. Y un buen programador no debería desperdiciarla. Más abajo...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • CONCEPTOS B SICOS DE PROGRAMACI N ORIENTADA A OBJETOS
  • Programaci N Orientada A Objetos
  • Programaci N Orientada A Objetos
  • Programaci n orientada a objetos
  • Programaci N Orientada A Objetos
  • Programaci n orientada a objetos
  • Programaci n orientada o objetos
  • Programaci N Orientada A Objetos Alex

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS