Que tal
programadores el día de hoy tenemos un tema muy abstracto pero muy interesante
para el lenguaje C++.
Antes de comenzar
debo comentarles que para el tema de las Clases necesitamos tener conocimientos
previos del tema de métodos y funciones si aún no tienen este conocimiento,
pueden dar click en el siguiente link:
Una clase podemos
verla como un conjunto de características particulares de algo, que a estas
características les llamaremos atributos. Un ejemplo básico puede ser el de una
persona.
En este caso la
clase seria PERSONA.
En las clases
existe una característica muy importante que llamares ENCAPSULAMIENTO que lo
definiremos como un nivel de seguridad que se le brinda a la CLASE para que
esta tenga o no acceso, dependiendo a lo que queramos hacer.
El encapsulamiento
tiene 5 niveles de seguridad y son los siguientes:
- · Private: Únicamente la clase donde se encuentran estos atributos tendrán acceso
- · Protected: Acceso dentro de esa clase y clases heredadas.
- · Default: Cualquier clase puede ingresar
- · Public: Cualquier clase puede ingresar
- · Friend: Únicamente tiene acceso dentro de esa clase y clases derivadas.
Si seguimos con el ejemplo anterior de la PERSONA dividiríamos sus atributos de la siguiente manera:
Cuando nos
planteamos un problema con clases, necesitamos de la ayuda de los diagramas de
UML ya que dentro del código la
estructura de la CLASE es muy similar. Es decir los diagramas UML serán de
apoyo al momento de programar. El ejemplo de persona quedaria de la siguiente manera
Realizar un
programa con el siguiente diagrama de clases, utilizando todos sus atributos
PUBLICOS.
El código de el
diagrama UML anterior quedaría de la siguiente forma
#include <iostream>
#include <cstdio> // libreria para fflush
#include <cstdlib> // libreria para system("pause")
using namespace std;
class Persona { // declaramos la clase Persona
public: // el tipo de dato es publico
string
nombre;
int edad;
string
direccion;
float
estatura;
public: // el tipo de metodos sera publico
{
//utilizaremos las mismas variables de la clase
cout<<"INGRESA
LOS SIGUIENTES DATOS: "<<endl;// endl salto de linea
cout<<"Nombre: ";
cin>>nombre;
fflush(stdin); // se ocupa debajo de los string
cout<<"Edad: ";
cin>>edad;
cout<<"Direccion: ";
cin>>direccion;
fflush(stdin); // con este no se saltara el programa
cout<<"Estatura: ";
cin>>estatura;
}
void
mostrarDatos() // siguiente metodo unicamente imprimimos
{
cout<<"::::::::::::DATOS
INGRESADOS:::::::::::::"<<endl;
cout<<"Nombre: "<<nombre<<endl;
cout<<"Edad: "<<edad<<endl;
cout<<"Direccion: "<<direccion<<endl;
cout<<"Estatura: "<<estatura<<endl;
}
};
int main()
{
Persona per; //PER es el apodo que se le da a la clase
per.pedirDatos(); // con el apodo llamamos al metodo
per.mostrarDatos();
system("pause"); // termina el programa
}
NOTAS IMPORTANTES:
- · Les recomiendo leer los comentarios, ya que explican cada uno que hace el programa Fi
- nalmente el programa correría de la siguiente manera
Esto ha sido todo de esta primera parte.. La segunda parte utilizaremos el tipo de dato PRIVATE . así que estén pendientes y si tienen alguna duda pueden comentar, y les responderemos lo mas rápido posible.
NOS VEMOS A LA PRÓXIMA :D
No hay comentarios.:
Publicar un comentario