55
Java Resumen Un recorrido sobre conceptos explicados en clases y utilizados en las tareas Java Dr. Febles

java,conceptos basicos

Embed Size (px)

Citation preview

Page 1: java,conceptos basicos

Java

Resumen

Un recorrido sobre conceptos explicados en clases y utilizados

en las tareas

Java Dr. Febles

Page 2: java,conceptos basicos

Java Dr. Febles

Visión

Sus virtudes mas generales son:

•Naturaleza independiente de plataforma.

•Orientación a objetos.

•Fácil aprendizaje

Page 3: java,conceptos basicos

Java Dr. Febles

El lenguaje Java

Es a la vez:

Compilado: convierte los .java en bytecodes.

Interpretado. ejecuta cada una de estas instrucciones en un ordenador específico.

Page 4: java,conceptos basicos

Java Dr. Febles

Page 5: java,conceptos basicos

Java Dr. Febles

Cinco tareas principales de la

JVM

1.Reservar espacio en memoria para los objetos

creados.

2.Liberar la memoria no usada (garbage collection).

3.Asignar variables a registros y pilas

4.Llamar al sistema huésped para ciertas funciones,

como los accesos a los dispositivos

5.Vigilar el cumplimiento de las normas de seguridad

de las aplicaciones Java

Page 6: java,conceptos basicos

Java Dr. Febles

No hay ninguna variable, función o constante que no esté dentro de una clase.

Orientado a objetos puro

Page 7: java,conceptos basicos

Java Dr. Febles

Tipos de programas más comunes

applets (se ejecutan en el navegador de la máquina cliente).

aplicaciones (programas que se ejecutan directamente en la JVM).

servlet que es similar a los applets pero se ejecutan en los servidores Java.

Page 8: java,conceptos basicos

Java Dr. Febles

Características distintivas

Java

Page 9: java,conceptos basicos

Java Dr. Febles

Es SIMPLE

Ofrece toda la funcionalidad de un lenguaje potente, pero sin las características menos usadas y más confusas de éstos. C++ es un lenguaje que adolece de falta de seguridad, pero C y C++ son lenguajes más difundidos, por ello Java se diseñó para ser parecido a C++ y así facilitar un rápido y fácil aprendizaje.

Page 10: java,conceptos basicos

Java Dr. Febles

Es DISTRIBUIDO:

Se ha construido con extensas capacidades de interconexión TCP/IP. Existen librerías de rutinas para acceder e interactuar con protocolos como http y ftp. Esto permite a los programadores acceder a la información a través de la red con tanta facilidad como a los ficheros locales.

Page 11: java,conceptos basicos

Java Dr. Febles

Es ROBUSTO

•Java realiza verificaciones en busca de problemas tanto en tiempo de compilación como en tiempo de ejecución.

•Maneja la memoria para eliminar las preocupaciones por parte del programador de la liberación o corrupción de memoria.

•Implementa los arrays auténticos, en vez de listas enlazadas de punteros, con comprobación de límites, para evitar la posibilidad de sobreescribir o corromper memoria resultado de punteros que señalan a zonas equivocadas.

Page 12: java,conceptos basicos

Java Dr. Febles

Es de ARQUITECTURA NEUTRAL

El compilador Java compila su código a un fichero

objeto de formato independiente de la arquitectura de

la máquina en que se ejecutará. Cualquier máquina

que tenga el sistema de ejecución (run-time) puede

ejecutar ese código objeto, sin importar en modo

alguno la máquina en que ha sido generado.

Page 13: java,conceptos basicos

Java Dr. Febles

Es SEGURO

Cuando se usa Java para crear un navegador, se combinan las características del lenguaje con protecciones de sentido común aplicadas al propio navegador.

Page 14: java,conceptos basicos

Java Dr. Febles

Es PORTABLE:

Más allá de la portabilidad básica por ser de arquitectura independiente, Java implementa otros estándares de portabilidad para facilitar el desarrollo. Los enteros son siempre enteros y además, enteros de 32 bits en complemento a 2. Además, Java construye sus interfaces de usuario a través de un sistema abstracto de ventanas de forma que las ventanas puedan ser implantadas en entornos Unix, Pc o Mac.

Page 15: java,conceptos basicos

Java Dr. Febles

Es INTERPRETADO

El intérprete Java (sistema run-time) puede ejecutar

directamente el código objeto. Enlazar (linkar) un

programa, normalmente, consume menos recursos que

compilarlo, por lo que los desarrolladores con Java

pasarán más tiempo desarrollando y menos esperando

por el ordenador

Page 16: java,conceptos basicos

Java Dr. Febles

Es MULTITHREADED

Al ser multithreaded (multihilvanado, en

mala traducción), Java permite muchas

actividades simultáneas en un programa. Los

threads (a veces llamados, procesos ligeros),

son básicamente pequeños procesos o piezas

independientes de un gran proceso.

Page 17: java,conceptos basicos

Java Dr. Febles

Es DINAMICO

Java se beneficia todo lo posible de la tecnología orientada a objetos. Java no intenta conectar todos los módulos que comprenden una aplicación hasta el tiempo de ejecución. Las librería nuevas o actualizadas no paralizarán las aplicaciones actuales (siempre que mantengan el API anterior).

Page 18: java,conceptos basicos

Identificador

Nombre

Que identifica

variable

método

función

Clase

Text

Java Dr. Febles

Page 19: java,conceptos basicos

Reglas para nombrar indicadores

No se pueden usar palabras reservadas

Distingue mayúsculas de minúsculas

No pueden incluir espacio en blanco

Pueden incluir pero no comenzar con número

Han de comenzar con letra ó_ ó $.

Java Dr. Febles

Page 20: java,conceptos basicos

Cuando las instrucciones producen un valor son llamadas expresiones.

Una instrucción representa una orden simple que es realizada en un programa en Java

El valor producido por una instrucción es llamado valor de retorno.

Instrucciones y expresiones

1 2 3

Java Dr. Febles

Page 21: java,conceptos basicos

Java Dr. Febles

De instancia

De clase

Locales

Variables

Tipos

Todas las

variables han de declararse antes de usarlas

Page 22: java,conceptos basicos

Java Dr. Febles

Las variables locales se declaran en el

momento en el que son necesarias. Es una

buena costumbre inicializar las variables en

el momento en el que son declaradas. int

En Java

Page 23: java,conceptos basicos

Java Dr. Febles

Precisión

Al contrario de otros lenguajes, java no posee variables globales ( variables que pueden ser usadas en todas las partes del programa). Las variables de instancia son usadas para comunicar informaciones de un objeto a otro y eso sustituye la necesidad de variables globales.

Page 24: java,conceptos basicos

Bloque de código

Grupo desentencias

Limitados por Llaves

Definición deuna Clase

Def. de unaFunción miembro

IteracciónFOR

Try…cath

Actúa como unidad

Java Dr. Febles

Page 25: java,conceptos basicos

Java Dr. 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 26: java,conceptos basicos

Aspectos generales

Clases

Describe propiedades y comportamientos importantes e ignora otras

Objetos

Atributos

Operaciones

Enlaces

Son una abstracción

Java Dr. Febles

Page 27: java,conceptos basicos

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 28: java,conceptos basicos

¿Y los atributos?

Atributos

Se guardan en variables denominadas de instancia

Apariencias

Otras cualidades

Color

Estatura

Características individuales

Java Dr. Febles

Page 29: java,conceptos basicos

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 30: java,conceptos basicos

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 31: java,conceptos basicos

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 32: java,conceptos basicos

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 33: java,conceptos basicos

Java Dr. Febles

Abstract

Public

Final

Tipos

Clasificación de clases

Page 34: java,conceptos basicos

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 Final Public

Java Dr. Febles

Page 35: java,conceptos basicos

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 36: java,conceptos basicos

Java Dr. Febles

¿ Cómo se dice en java que una clase

está heredando de otra?

class nombreSubClase extends nombreSuperClase

{

......

}

Page 37: java,conceptos basicos

Java Dr. 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 38: java,conceptos basicos

Java Dr. 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 39: java,conceptos basicos

Java Dr. Febles

Una definición de objeto

Un elemento independiente de un programa de computadora que representa un numero de recursos relacionados y es proyectado para cumplir tareas específicas.

Page 40: java,conceptos basicos

Java Dr. Febles

¿Y los métodos?

El comportamiento de los objetos de una clase se implementa mediante funciones miembro o métodos.

Page 41: java,conceptos basicos

Java Dr. Febles

Una definición de método

Es un conjunto de instruccionesque realizan una determinadatarea.

Son similares a las funciones de loslenguajes estructurados.

Page 42: java,conceptos basicos

Métodos de instancia y de clase

De instanciaUn objeto llama a

un método para

realizar una

determinada

tarea

Métodos

De clase

El método

se llama

desde la

propia clase.

Java Dr. Febles

Page 43: java,conceptos basicos

La implementación de un método consiste

de dos partes, la declaración (firma) y el

cuerpo del método.

declaraciónDeMétodo {

cuerpoDeMétodo

}

Implementación de Métodos

Java Dr. Febles

Page 44: java,conceptos basicos

Aspectos de la declaración

El nombre del método

El tipo de retorno

Tipos y cantidad de argumentos

Quién puede Llamar al método

Java Dr. Febles

Page 45: java,conceptos basicos

Ejemplo, el código siguiente declara un método llamado

estaVacio() en la clase Pila que devuelve un valor booleano

(true o false):

class Pila {

. . .

boolean estaVacio() {

. . .

}

}

Obligatorio: el nombre y el tipo de retorno del método.

Java Dr. Febles

Page 46: java,conceptos basicos

No devuelve valor

void

Devuelve valor

Dato primitivo

Referencia

Devolver un Valor desde un Método

Java Dr. Febles

Page 47: java,conceptos basicos

Su nombre es igual que el de la clase

Inicializa un objeto de la clase

Son llamados mediante el operador new

El método constructor

Java Dr. Febles

Page 48: java,conceptos basicos

Java Dr. Febles

Se usa para crear un nuevo objeto

Ejemplo:

String teamName = new String();

Radom randInfo = new Random();Mamifero A = new mamifero();

Nota: Los paréntesis pueden estar vacíos pero son

importantes

El operador New

Page 49: java,conceptos basicos

Precisión sobre constructores

Todas las clases Java tienen métodos especiales llamados Constructores que se utilizan para inicializar un objeto nuevo de ese tipo.

Los constructores tienen el mismo nombre que la clase --el nombre del constructor de la clase Rectangle es Rectangle(), el nombre del constructor de la clase Thread es Thread(), etc...

Java Dr. Febles

Page 50: java,conceptos basicos

Una clase puede sobrescribir un

método de sus superclases.

Debe tener el mismo, nombre, tipo

de retorno y lista de parámetros que

el método al que ha sobrescrito.

Sobre escritura de métodos

Java Dr. Febles

Page 51: java,conceptos basicos

Java Dr. Febles

Creando la jerarquía

Animal

Terrestre Acuático

Bípedos reptiles Voladores

Page 52: java,conceptos basicos

Java Dr. Febles

Localización de métodos en una jerarquía

Definición del método Clase

Clase Clase

ClaseClase

ObjetoObjeto

Se envía el mensaje, recorre verticalmente la jerarquía hasta que una definición sea encontrada

Page 53: java,conceptos basicos

Java Dr. Febles

El método es anulado por esta definición

Definición del método

inicial

Clase

ClaseClase

ObjetoObjeto

Se envía el mensaje, recorre verticalmente la jerarquía hasta que una definición sea encontrada

Clase

Este procedimiento es llamado anulación de método

Page 54: java,conceptos basicos

En Java, se puede utilizar el mismo nombre

para varios métodos pasándole un tipo de

parámetro diferente a cada uno de los

métodos.

Ejemplo: La clase de dibujo, se podrán

declarar tres métodos llamados draw<() y que

cada uno aceptara un tipo de parámetro

diferente:

Nombre de método

Java Dr. Febles

Page 55: java,conceptos basicos

Java Dr. Febles

Variables de clase

class MiembroDeFamilia {

static String apellido = Perez;

String name;

int edad;

}

Nota: Si una clase tiene una variable declarada static , todo objeto de esa clase tendrá el mismo valor para esa variable.