Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Las Clases tienen partes Púbicas y partes Privadas. Generalmente llamaremos a la parte
publica de una clase su interfaz.
2
CONCEPTOS INICIALES – CLASES
Los OBJETOS que tienen estado y comportamiento idénticos se agrupan o clasifican en
"CLASES".
CLASES:
Una clase es un modelo que define el estado y comportamiento de cierto tipo de objetos.
3
CONCEPTOS INICIALES – CLASES
Herencia:
Capacidad de crear nuevas clases basándose en clases base previamente definidas, de las
que se aprovechan ciertos datos y métodos, se desechan otros y se añaden nuevos.
Jerarquía:
Orden de subordinación de un sistema clases.
Polimorfismo:
Propiedad según la cual un mismo objeto puede considerarse como perteneciente a distintas
clases.
4
CLASES - DECLARACION
La lista de clases base se usa para derivar clases. La lista de miembros comprende una
lista de funciones y datos.
5
CLASES - ACCESO
6
CLASES - ACCESO
Acceso Privado (PRIVATE)
• Solo son accesibles por los propios miembros de la clase, pero no desde funciones externas o
desde funciones de clases derivadas.
• Acceso por defecto.
Acceso Publico (PUBLIC)
• Cualquier miembro publico de una clase es accesible desde cualquier parte donde sea
accesible el propio objeto.
Acceso Protegido (PROTECTED)
• Con respecto a las funciones externas, es equivalente al acceso privado, pero con respecto a
las clases derivadas se comporta como publico.
7
CLASES Y OBJETOS
EJEMPLO:
Una analogía para entender las clases y los objetos puede
ser una fabrica ensambladora de carros.
Hay un modelo o diseño (clase) especifico de un auto, pero
este modelo en si no es un carro, es solo una descripción
de que características y funcionalidades deben tener los
carros que sean de ese modelo.
Los carros ensamblados en la fabrica de acuerdo a dicho
modelo serían los objetos, es decir entidades tangibles que
se construyeron a partir de las descripciones y
especificaciones consignadas en el diseño o modelo (o sea
la clase).
8
CLASES - METODOS
La lista de métodos puede ser:
Simplemente una declaración de prototipos,
O pueden ser también definiciones.
Cuando se definen fuera de la clase se debe usar el operador de ámbito “::”. Las
funciones definidas de este modo serán tratadas como inline (se inserta el código cada
vez que son llamadas).
Los métodos de una clase son funciones que sirven para manipular las variables de la
clase, de ahí viene la primera característica relevante de la programación orientada a
objetos que es el encapsulamiento, ya que en lo posible se va a tratar de que solo pueda
accederse a una variable de clase a través de un método de la clase.
9
CLASES - METODOS
10
CLASES - METODOS - THIS
Para cada objeto declarado de una clase se mantiene una copia de sus datos, pero todos
comparten la misma copia de las funciones de esa clase.
Esto ahorra memoria y hace que los programas ejecutables sean mas compactos, pero
plantea un problema.
Cada función de una clase puede hacer referencia a los datos de un objeto, modificarlos
o leerlos, usando el puntero especial llamado THIS que apunta al mismo objeto.
11
CLASES - METODOS - CONSTRUCTORES
Son métodos especiales que sirven para inicializar un objeto de una determinada
clase al mismo tiempo que se declara. Son especiales por varios motivos:
• Tienen el mismo nombre que la clase a la que pertenecen.
• No tienen tipo de retorno, y por lo tanto no retornan ningún valor.
• No pueden ser heredados.
• Deben ser públicos, no tendría ningún sentido declarar un constructor como
privado, ya que siempre se usan desde el exterior de la clase, ni tampoco como
protegido, ya que no puede ser heredado.
12
CLASES - METODOS - CONSTRUCTORES
Si no definimos un constructor el compilador creara uno por defecto, sin parámetros,
que no hará absolutamente nada.
Si definimos un constructor que requiere argumentos, es obligatorio suministrarlos.
Sera llamado siempre que se declare un objeto de esa clase.
13
CLASES - METODOS - CONSTRUCTORES
14
CLASES - INICIALIZACION DE OBJETOS
15
CLASES - INICIALIZACION DE OBJETOS
Es preferible usar la inicialización siempre que sea posible en lugar de asignaciones.
16
CLASES - SOBRE CARGA DE CONSTRUCTORES
Los constructores son funciones, también pueden definirse varios constructores para
cada clase (sobrecarga).
Como en las funciones, no pueden declararse varios constructores con el mismo numero
y el mismo tipo de argumentos
17
ENCAPSULAMIENTO Y NIVEL DE ACCESO A
MIEMBROS DE LA CLASE
El acceso a los miembros de una clase solo puede lograrse a través de una instancia de
esa clase, es decir, de un objeto de dicha clase.
De modo que para acceder a un miembro en específico de una clase se llama al objeto
recién declarado y con ayuda del operador punto . se hace el llamado a la variable o método
al cual se requiere acceder.
int main()
{ MiClase miObjeto; //Declarando un objeto de la clase
miObjeto.cambiarVar1(5); //Accediendo a un miembro con el operador punto
double var = miObjeto.calcularArea(34.6, 23.9); //Accediendo a un miembro con el
operador punto
}
18
MÉTODOS GET Y SET
Los métodos GET y SET son métodos que usualmente se definen para el acceso a una
variable privada de la clase, para obtener su estado actual (valor) y para modificarlo
respectivamente.
Un método GET es un método que retorna el valor actual de la variable privada. Tiene
valor de retorno del mismo tipo de la variable en cuestión y no tiene parámetros de
entrada.
19