C3 las clases en java v2

Post on 04-Jul-2015

1.632 views 2 download

Transcript of C3 las clases en java v2

Java Dr. Febles

Las Clases en Java

Titulo de la clase

Java Dr. Febles

Fundamentos de Java

Repaso del tema anterior

Java Dr. Febles

Sobre identificadores diga:

Qué información pueden identificar

• Tres reglas para escribirlos

Convenciones para escribirlos

Java Dr. Febles

Sobre expresiones en Java conteste:

¿Qué es una instrucción?

¿Qué es una expresión?

¿Qué es valor de retorno?

Java Dr. Febles

Sobre variables exprese:

¿Deben ser declarada para usarlas?

Tipos de variable en Java

¿Qué es variable de instancia?

Java Dr. Febles

Sobre operadores Diga:

La prioridad para su ejecución

Java Dr. Febles

Temas

1. Definición de clases en Programación

2. Ejemplos de Clases en Java3. Ámbito de definición de una clase

en Java4. La clase rectángulo 5. Tipos de clases en Java6. Clases, subclases y superclases7. Herencia en Java

Java Dr. Febles

Objetivos

1. Entender el concepto de clases y superclases2. Evaluar el concepto de Objeto y su utilización en

la programación 3. Adquirir nociones de Herencia y su relación con

la programación orientada a objetos.4. Distinguir las clases de la superclases5. Organizar una jerarquía de clases sencilla.6. Conocer los que significa los paquetes y las

interfases

Java Dr. Febles

Un programa

Conjunto de instrucciones que dicen a la computadora que hacer.

Un grupo de pequeños programas que responden a eventos específicos

La POO ve un programa como un conjunto de objetos que trabajan juntos de manera predefinida para realizar tareas.

Java Dr. Juan Pedro Febles

La programación orientada a objetos se basa en la programación de clases. Un programa se construye a partir de un conjunto de clases.

La POO

Aspectos generales

Clases

Describe propiedades y comportamientos importantes e ignora otras

Objetos

Atributos

Operaciones

Enlaces

Son una abstracción

Java Dr. Febles

Como una colección de campos y

métodos (funciones y

procedimientos) que trabajan

juntos para acometer una tarea

específica de programación.

¿Cómo puedo definir una clase?

Java Dr. Febles

Un ejemplo de clase

Una clase es una plantilla implementada en software que describe un conjunto de objetos con atributos y comportamiento similares.

Una instancia u objeto de una clase es una representación concreta y específica de una clase y que reside en la memoria del ordenador.

¿Y los atributos?

Atributos

Se guardan en variables denominadas de instancia

Apariencias

Otras cualidades

Color

Estatura

Características individuales

Java Dr. Febles

Ejemplos de clases

• Clase personas (atributos: nombre, edad,

dirección; operaciones: actualizar_edad,

cambiar_dirección).

• Clase polígonos (atributos: vértices, color del

borde y color del interior; operaciones: diseñar,

borrar y mover).

Nota: Cada objeto es denominado instancia de su

clase.

Java Dr. Febles

Ejemplos de Instancias de las clases

•(Juan, 30, calle 12 # 125 ...)

•(María, 45, calle14 # 300 ...)

•Triángulo 1 ((0,0),(1,0),(0,1)), negro, blanco),

•Triángulo 2 ((0,0),(1,0),(0,1)), negro, blanco),

•Rectángulo 1 ((0,0),(1,0),(1,2),(0,2)), azul, rojo),

•Cuadrado 1 ((0,0),(1,0),(1,1),(0,1)), verde, amarillo).

Java Dr. Febles

Cómo se crea una clase

Se utiliza la palabra reservada class y a continuación el

nombre de la clase. La definición de la clase se pone

entre las llaves de apertura y cierre. El nombre de la

clase empieza por letra mayúscula.

Ejemplo:

class Rectangulo{

//miembros dato

//funciones miembro

}

Java Dr. Febles

Crear clase

class mamifero {

String color;

String sex;

boolean hambre;

}

Se crean tres variables de instancias. Faltan métodos.

Java Dr. Febles

Los miembros dato

Los valores de los atributos se guardan en los

miembros dato o variables de instancia. Los nombres

de dichas variables comienzan por letra minúscula,

como ya hemos visto.

Java Dr. Febles

Ámbito de una variable

No se puede declarar una variable con el mismo nombre que una de ámbito exterior.Ejemplo. En C y C++ son distintas, porque están declaradas dentro de ámbitos diferentes. En Java, esto es ilegal.Class Ambito {

int i = 1; // ámbito exterior{ // crea un nuevo ámbitoint i = 2; // error de compilación}

}

Java Dr. Febles

Crear la clase Rectángulo, que describa las características comunes a estas figuras planas que son las siguientes: Origen del rectángulo: el origen o posición de la esquina superior izquierda del rectángulo en el plano determinado por dos números enteros x e y. Las dimensiones del rectángulo: ancho y alto, otros dos números enteros

Otro ejemplo

Java Dr. Febles

class Rectangulo{

int x;

int y;

int ancho;

int alto;

//faltan las funciones miembro

}

Clase rectángulo

Java Dr. Febles

Abstract

Public

Final

Tipos

Clasificación de clases

Una clase final se declara como la clase que termina una cadena de herencia. No se puede heredar de una clase final

Una clase abstract tiene al menos un método abstracto. Una clase abstracta no se instancia, sino que se utiliza como clase base para la herencia

Las clases public son accesibles desde otras clases, bien sea directamente o por herencia

Lo fundamental de cada tipo de clase

Abstract Public Final

Java Dr. Febles

Herencia

Con la herencia definiremos nuevas clases

(subclases) a partir de clases ya existentes

(superclases) adaptando el código de esta

última o añadiendo nuevo código pero “sin

tocar” la clase original, es decir sin afectar la

funcionalidad ya existente para la superclase.

Java Dr. Febles

¿ Cómo se dice en java que una clase

está heredando de otra?

class nombreSubClase extends nombreSuperClase

{

......

}

Java Dr. Juan Pedro Febles

Regla: Una subclase hereda todas las

variables miembros de su superclase

que puedan ser accesibles desde la

subclase (a menos que la variable

miembro esté oculta en la subclase).

¿Qué variables miembro hereda

una subclase?

Java Dr. Juan Pedro Febles

•heredan aquellas variables miembros declaradas como public

o protected.

•heredan aquellas variables miembros declaradas sin

especificador de acceso (normalmente conocidas como

"Amigas") siempre que la subclases esté en el mismo paquete

que la clase.

•no hereda las variables miembros de la superclase si la

subclase declara una variable miembro que utiliza el mismo

nombre. La variable miembro de la subclase se dice que oculta

a la variable miembro de la superclase.

•no hereda las variables miembro private.

¿Qué variables miembro hereda una subclase?

Java Dr. Febles

Resumen

Clase: Un modelo para un objeto que contiene variables

para describirlos y métodos para describir como ellos se

comportan. Las clases pueden heredar variables y métodos

de otras clases.

Objeto: Una instancia de una clase. Varios objetos que

sean instancia de la misma clase tienen acceso a los

mismos métodos, pero frecuente mente tienen valores

diferentes para sus variables.

Java Dr. Juan P Febles

Resumen

•Paquete: Un conjunto de clases e interfases. Las clases de paquetes que no sean Java.lang deben ser importadas explícitamente o ser referidos a través de sus nombres y paquetes completos.

•Subclase: Una clase mas abajo que otra en la jerarquía de clase, su superclase.

Java Dr. Juan P Febles

Resumen cont…

•Superclase: Una clase arriba de otra en la jerarquía de clase, su subclase. Una clase puede tener solo una superclase inmediatamente arriba de ella, mas ella puede tener a su vez una superclase.

Java Dr. Juan P Febles

Fin de la clase

Próximo tema:

Objetos, Métodos y funciones en Java