Sesión 7
Sesión 7
SESION Nº 07
Programación
Orientada a
Objetos:
Clases y Objetos
Persona Nombre
nombre
apellido materno
apellido paterno Atributos
sexo
edad
comer()
beber() Operaciones
dormir()
Clase
Nombre Vehículo
marca
modelo
Atributos color
número de serie
mover()
abrir()
Operaciones girar()
detener()
Clase
Pelota
Nombre
Atributos
Operaciones
Clases y Objetos
Mundo Real En OOP
Clase Perro
generalización Clase
Raza,
de características Define
Color,
(atributos y datos y
Edad,
comportamientos) métodos
Corre,
......
Objeto Tino
Objetos
Instancia de una clase Pastor Alemán
Ocupa
distinguible por sus Marrón
espacio,
características 7 meses
se crea y
específicas Veloz
se destruye
.......
¿Qué es un Objeto?
a + b = 10
Nombre: Carmen Reyes
Nº Empleado: 2587
Fecha de Contr.: 21 de marzo 1987
Condicion: Contratada
Estado
Conectar()
:MandoADistancia :Televisor
Canal(8)
Principios de la POO
• Abstracción
• Modularidad
• Encapsulamiento
• Herencia
• Polimorfismo
Declaración en JAVA
NetBeans:
• Clases
• Objetos
• Métodos
• Acceso a datos
• Atributos
Clase
• Es una plantilla para un objeto.
• Define la estructura de un objeto y su
interfaz funcional, es decir, define los
métodos y atributos de un grupo de
objetos de características similares.
class NombreClase{
//...
//cuerpo de la clase
//...
}
class Empleado{
//Atributos
public String nombres, apellidos;
private double sueldo;
public int edad;
//Constructor de la clase
public Empleado(String nom, String ape, double s, int ed)
}
private double asistir(int faltas){
return 0;
}
}
Atributos
• Los atributos se guardan en variables
denominadas de instancia, y cada
objeto particular puede tener valores
distintos para estas variables.
tipo nombre;
Métodos
• Los métodos son subrutinas que
definen la interfaz de una clase, sus
capacidades y comportamiento.
• Los métodos pueden tener una lista de
parámetros que permiten comunicar
información entre métodos.
} Métodos
double asistir(int faltas){
return 0;
}
}
Objeto
• Un objeto es una instancia o variable de
una clase. La declaración de una
referencia a objeto se realiza:
Clase objeto;
Método Constructor
• Un constructor es un método que inicia un objeto
inmediatamente después de su creación,
evitándonos tener que iniciar las variables. Tiene el
mismo nombre de la clase a la que pertenece.
class Empleado {
Empleado() {
Constructor
}
Empleado(int x, int y) {
}
}
Operador new
• Permite crear un nuevo objeto
invocando al método constructor de la
clase, y devuelve una referencia a ese
objeto, proporcionando almacenamiento
persistente.
NombreDelObjeto.variableDeInstancia
La misma clase Si Si Si Si
Subclases del mismo paquete Si Si Si -
Otras clases del mismo paquete Si Si Si -
Subclases en otros paquetes Si Si - -
Otras clases de otros paquetes Si - - -
class Empleado{
//Atributos
public String nombres, apellidos;
private double sueldo;
public int edad;
//Constructor de la clase
public Empleado(String nom, String ape, double s, int ed)
{ //Actualizando la información de la clase
this.nombres=nom;
this.apellidos=ape;
this.sueldo=s;
this.edad=ed;
}
//Métodos Propios de la clase
public void trabajar(String n, int horas, int dias){
}
private double asistir(int faltas){
return 0;
}
}
Ejemplo 1
• Implemente una clase de nombre Empleado con los siguientes
atributos: código, nombres, área laboral (Sistemas, Administración,
Marketing), sueldo, horas extras, afiliación de Seguro (AFP o SNP).
Indique su constructor que actualizara la informacion de sus atributos
asi como construya los siguientes métodos en dicha clase:
• MontoHExtras que calcula las horas extras del empleado en base
a: (SueldoBase * Horas Extras) / 240;
• MontoSeguro que sera el 17% de sueldo base si el seguro es AFP
o el 5% si es el SNP
• MontoEssalud calculable del 3% del SueldoBase
• MontoDescuentos que se calcula como: MontoSeguro +
MontoEssalud;
• SueldoBruto que se calcula como: SueldoBase + MontoHExtras;
• SueldoNeto que se calcula como: SueldoBruto - MontoDescuentos
REFERENCIA BIBLIOGRAFICA
Código Centro de
Referencias bibliográficas
Información UCV
OSWALDO, CAIRÓ BATTISTUTI. Metodología de la
programación: Algoritmos, Diagramas de flujo y programas.
005.1 C13 EJ. 2 EDITORIAL ALFAOMEGA. México Df. 2005
ISBN: 9789506414306
LEOBARDO, LÓPEZ ROMÁN. Metodología de la programación
orientada a objetos. EDITORIAL ALFAOMEGA. México Df. 2006.
005.1 L86 ISBN: 9789506414306