Sesión 2 - dccia - Universidad de Alicante

Anuncio
Razonamiento Geométrico
Diversiones
Sesión 2: Introducción a Java
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
1
Índice
ƒ Revisión de Java
¾ ¿Qué es Java?
¾ Clases y objetos
¾ La variable CLASSPATH
¾ Los ficheros jar
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
2
1
¿Qué es Java?
ƒ Java es un lenguaje orientado a objetos
ƒ Java es un lenguaje híbrido porque permite tipos
de datos primitivos como:
¾ int
¾ double
ƒ Toda la codificación tiene lugar dentro de clases
Java
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
3
Un programa sencillo de Java
Un ejemplo de programa Java: Arguments.java
import java.io.*;
public class Arguments {
public static void main (String argv []) {
if (argv.length > 0) {
System.out.println("Arguments ejecutado con " +
argv.length + " argumentos");
for (int i = 0; i < argv.length; i++)
System.out.println("argv[" + i + "]=" + argv[i]);
}
else {
System.out.println("Arguments: sin argumentos");
System.out.println("Usage: Arguments <argumentos>");
}
}
}
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
4
2
¿Qué es una clase Java?
ƒ Una clase Java es:
¾ La unidad atómica más pequeña de una aplicación Java
¾ Un elemento de construcción de una aplicación Java
¾ Una composición de métodos y atributos
ƒ Los atributos definen las carácterísticas, o
propiedades, de la clase
ƒ Los métodos definen el comportamiento de la clase
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
5
Clases vs. Objetos
ƒ Las clases son las plantillas que definen qué
atributos y qué comportamientos tendrán los
objetos
ƒ Los objetos son las instancias reales de la
implementación de las clases
ƒ Ejemplo
¾ Clase: Persona
¾ Objeto: Domingo Gallardo
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
6
3
Clases
Definición de clases:
[public] class Classname {
...
}
Por ejemplo, Arguments.java::
public class Arguments {
...
}
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
7
Métodos
ƒ Los métodos definen el comportamiento de una
clase
Definición de métodos:
public class Classname {
[visibilidad][static] returnType methodName ( arguments ) {
// cuerpo del metodo
}
}
Por ejemplo:
public class Arguments {
private void doWork(String arguments) {. . .}
public static void main (String argv []) { . . . }
}
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
8
4
Atributos
ƒ Los atributos de instancia representan el estado de
una instancia de la clase
Definición de atributos:
public class Classname {
[visibilidad][static] type attributeName [ = inicialización ];
// otros atributos y métodos
}
}
Por ejemplo:
public class Arguments {
private String nombre = “colega”;
public int index = -1;
// otros atributos y métodos
}
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
9
Import
ƒ Import permite usar clases y métodos definidas en
otros paquetes
Importar paquetes:
import package.[subpackage.]class|*;
public class ClassName {
// podemos usar las clases importadas como si estuvieran
// definidas localmente
}
Por ejemplo:
import JavaRG.Nucleo2D.*;
public class MiCanvas {
Punto2D puntos[];
// más métodos y atributos
}
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
10
5
Excepciones
ƒ Las excepciones permiten a los programadores
capturar y manejar los errores que ocurren en una
clase
Excepciones usando bloques try/catch:
try {
while (poligonoSimple && i<numPuntos-1) {
Segmento2D seg = new Segmento2D(vertices[i-1], vertices[i]);
while (poligonoSimple && j<numPuntos) {
if(seg.intersectaPropSegmento(
new Segmento2D(vertices[i-1], vertices[i])))
poligonoSimple = false; }
} catch (GeomException e) {}
Lanzando una excepción:
if (i != 0 && i != 1)
throw new GeomException("cartesiana (int): indice debe ser 0 ó 1");
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
11
P.E.E.
ƒ Estos son los principios fundamentales del POO
¾ Polimorfismo
¾ Herencia
¾ Encapsulación
ƒ Polimorfismo es la capacidad de un interfaz de
tener múltiples implementaciones
ƒ Herencia es un mecanismo por el que clases más
especificas especializan el comportamiento de clases
más generales
ƒ Encapsulación es la capacidad de esconder el
estado de un objeto para facilitar la abstracción.
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
12
6
Programas java
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
13
La variable CLASSPATH
ƒ Para ejecutar un programa Java es necesario
configurar la variable del entorno CLASSPATH
ƒ CLASSPATH identifica las localizaciones del
sistema de ficheros donde el compilador y el
intérprete de Java van a buscar ficheros .class
ƒ Un fichero .class debe ser alcazable desde una de
las entradas en CLASSPATH
Definición de CLASSPATH (Windows):
set CLASSPATH=C:\guest;C:\myfiles;.
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
14
7
Ejecutando un simple programa
ƒ El intérprete de Java, java, se usa para ejecutar
programas
ƒ El fichero .class referenciado debe ser localizable
via el CLASSPATH
Clase Java:
Arguments.class
Que se encuentra en el directorio:
/Users/domingo/Documents/Cursos/RG-02-03/Teoria/Diversiones/Ejemplos
CLASSPATH:
Setenv CLASSPATH /Users/domingo/Documents/Cursos/RG-02-03/Teoria/Diversiones/Ejemplos
Ejecutar el programa:
[/Users/domingo]% java Arguments
Introducción a Java
Copyright © 2002-2003 Universidad de Alicante
15
8
Descargar