Programanción I Ing. Cristhian Garita Fonseca E-mail: stebanmac@gmail.com Tel: 2000-7786
Clases Una clase es la definición de un tipo por parte del usuario(programador). En donde se definen métodos y atributos relacionados a ese tipo (clase). Prof.: Ing. Cristhian Garita Fonseca
Objetos Un objeto es una realización o instancia de una clase. Un objeto es dependiente de una clase, sin una clase no se puede crear un objeto Prof.: Ing. Cristhian Garita Fonseca
Clases vs Objetos Prof.: Ing. Cristhian Garita Fonseca
Paquetes en java Los paquetes son el mecanismo por el que Java permite agrupar clases, interfaces, excepciones y constantes. De esta forma, se agrupan conjuntos de estructuras de datos y de clases con algún tipo de relación en común. Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA Desde algo sencillo como el desarrollo de una clase hasta el desarrollo de un sistema complejo, siempre es importante tener una vista clara del problema que se plantea. Una ves que se tiene claro el concepto a desarrollar se procede a definir: Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… public Acceso de la clase Aplica también las reglas de declaración de variables private Nombre Atributos o características de la clase: Ej: Edad, Sexo Atributos Son métodos llamados igual que la clase y se utilizan cuando se crea una instancia de la clase Constructor (es) de la clase Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Get’s Creación de todos los métodos necesarios de la clase Properties de cada atributo Set’s métodos Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Acceso de la clase Public Una clase publica en todo el proyecto Private Clase que únicamente puede ser accedida en un mismo paquete y no desde otros paquetes Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Nombre de la clase Relacionado con el tipo de dato que se desea definir. Deben de comenzar con una letra Puede incluir, pero no comenzar por un número No puede incluir el carácter espacio en blanco Distingue entre letras mayúsculas y minúsculas No se pueden utilizar las palabras reservadas como nombres de clases Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Atributos de la clase Características relacionadas al tipo de dato (clase) que se desea crear Cabello Ojos boca Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Constructores de la clase Cuando se construye un objeto es necesario inicializar sus variables con valores coherentes, imaginemos un objeto de la clase Persona cuyo atributo color de pelo al nacer sea verde, un estado incorrecto tras construir el objeto persona. La solución en los lenguajes orientados a objetos es emplear los constructores. Un constructor es un método perteneciente a la clase que posee unas características especiales: Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Constructores de la clase cont.. Se llama igual que la clase. No devuelve nada, ni siquiera void. Pueden existir varios, pero siguiendo las reglas de la sobrecarga de funciones. De entre los que existan, tan sólo uno se ejecutará al crear un objeto de la clase. Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Constructores de la clase cont.. Dentro del código de un constructor generalmente suele existir inicializaciones de variables y objetos, para conseguir que el objeto sea creado con dichos valores iniciales. Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Properties de la clase.. Para manejar una de las características de la POO, que es el encapsulamiento se deben crear los properties de cada atributo (set’s y get’s) de la clase. Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Métodos de la clase.. Los métodos que tengan una clase tienen que ser relacionado al tipo de clase que se desea hacer, por ejemplo si se desea construir una clase persona, se podría tener un método que me indique días vividos de la persona según el numero de años cumplidos El caso erróneo sería por ejemplo, calcular capacidad de combustible (gasolina) Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… public class persona{ //definición de la clase private int edad; //Atributos de la clase persona(int edad){ //Construtor de la clase this.edad = edad; } public viod setEdad(int edad){ //properties de la clase public int getEdad(){ return this.edad public int diasVividos(){ //métodos de la clase return this.edad * 365; Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Uso del this en Java this es un apuntador al objeto mismo donde este y si sirve para evitar ambigüedades por que en el método que usas por que diferencia el atributo base de la clase del atributo base que entra como parámetro. Prof.: Ing. Cristhian Garita Fonseca
Definición de una clase en JAVA cont… Uso del super en Java super es una palabra reservada de java que me ayuda a llamar métodos de la clases superiores en la que me encuentro en caso de ser necesario. Prof.: Ing. Cristhian Garita Fonseca
Herencia de clases Herencia Es la propiedad que permite a los objetos construirse a partir de otros objetos. La clase base contiene todas las características comunes. Las sub-clases contienen las Características de la clase base mas las características particulares de la sub-clase Prof.: Ing. Cristhian Garita Fonseca
Herencia de clases Vehículo Animal Punto Figura (1,3) (5,2.5) (2,2) (2,1) (5,2.5) Prof.: Ing. Cristhian Garita Fonseca 21
Práctica Trabajar con clases, herencia y sus respectivos constructores Prof.: Ing. Cristhian Garita Fonseca 22
Tarea Creación de 10 clases en java, las dos primeras con los siguientes atributos y las otras 8 deben ser escogidas por el estudiante Vehículo Factura Marca Modelo Estilo (sedan, 4x4) Año VelocidadMaxima Color NumeroFactura Nombre Empresa SubTotal Impuestos Prof.: Ing. Cristhian Garita Fonseca