C3 las clases en java v2

32
Java Dr. Febles Las Clases en Java Titulo de la clase

Transcript of C3 las clases en java v2

Page 1: C3 las clases en java v2

Java Dr. Febles

Las Clases en Java

Titulo de la clase

Page 2: C3 las clases en java v2

Java Dr. Febles

Fundamentos de Java

Repaso del tema anterior

Page 3: C3 las clases en java v2

Java Dr. Febles

Sobre identificadores diga:

Qué información pueden identificar

• Tres reglas para escribirlos

Convenciones para escribirlos

Page 4: C3 las clases en java v2

Java Dr. Febles

Sobre expresiones en Java conteste:

¿Qué es una instrucción?

¿Qué es una expresión?

¿Qué es valor de retorno?

Page 5: C3 las clases en java v2

Java Dr. Febles

Sobre variables exprese:

¿Deben ser declarada para usarlas?

Tipos de variable en Java

¿Qué es variable de instancia?

Page 6: C3 las clases en java v2

Java Dr. Febles

Sobre operadores Diga:

La prioridad para su ejecución

Page 7: C3 las clases en java v2

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

Page 8: C3 las clases en java v2

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

Page 9: C3 las clases en java v2

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.

Page 10: C3 las clases en java v2

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

Page 11: C3 las clases en java v2

Aspectos generales

Clases

Describe propiedades y comportamientos importantes e ignora otras

Objetos

Atributos

Operaciones

Enlaces

Son una abstracción

Page 12: C3 las clases en java v2

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?

Page 13: C3 las clases en java v2

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.

Page 14: C3 las clases en java v2

¿Y los atributos?

Atributos

Se guardan en variables denominadas de instancia

Apariencias

Otras cualidades

Color

Estatura

Características individuales

Page 15: C3 las clases en java v2

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.

Page 16: C3 las clases en java v2

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).

Page 17: C3 las clases en java v2

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

}

Page 18: C3 las clases en java v2

Java Dr. Febles

Crear clase

class mamifero {

String color;

String sex;

boolean hambre;

}

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

Page 19: C3 las clases en java v2

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.

Page 20: C3 las clases en java v2

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}

}

Page 21: C3 las clases en java v2

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

Page 22: C3 las clases en java v2

Java Dr. Febles

class Rectangulo{

int x;

int y;

int ancho;

int alto;

//faltan las funciones miembro

}

Clase rectángulo

Page 23: C3 las clases en java v2

Java Dr. Febles

Abstract

Public

Final

Tipos

Clasificación de clases

Page 24: C3 las clases en java v2

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

Page 25: C3 las clases en java v2

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.

Page 26: C3 las clases en java v2

Java Dr. Febles

¿ Cómo se dice en java que una clase

está heredando de otra?

class nombreSubClase extends nombreSuperClase

{

......

}

Page 27: C3 las clases en java v2

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?

Page 28: C3 las clases en java v2

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?

Page 29: C3 las clases en java v2

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.

Page 30: C3 las clases en java v2

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.

Page 31: C3 las clases en java v2

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.

Page 32: C3 las clases en java v2

Java Dr. Juan P Febles

Fin de la clase

Próximo tema:

Objetos, Métodos y funciones en Java