PDF de programación - Curso de Java

Imágen de pdf Curso de Java

Curso de Javagráfica de visualizaciones

Publicado el 26 de Mayo del 2018
655 visualizaciones desde el 26 de Mayo del 2018
2,0 MB
14 paginas
Creado hace 20a (17/09/2003)
Curso de JAVA

Diciembre 1999

Javier Pardo [email protected]

Introducción

Clases

•Trasparencias
•Ejemplos
•Yo hablando
•Vosotros preguntando

Libros

•Thinking in Java
(2nd Edition)

•Aprenda Java como si

estuviera en primero

•Otros.

Web Curso

•Información
•Recursos WWW
•Código ejemplos
•Libros
•Tutoriales
•Programas

Lista de correo

•Sugerencias
•Dudas y preguntas

Programas

•JDK 1.2.2
•Editor

Curso de JAVA

1

Curso de JAVA

Introducción: Libros

Introducción: Web del curso

Aprenda Java como si estuviera en primero

•Castellano
•ETSII Navarra (SS)
•Sencillo y claro

Thinking in Java

•Inglés
•Introducción avanzada

Curso de JAVA

3

Curso de JAVA

2

4

Introducción: Listas de correo

Índice del curso

[email protected]

•Dudas
•Sugerencias
•Problemas

[email protected]

Día 1: Programación en Java

Día 4: Tecnologías Java I

Introducción
Sintaxis
Objetos
Documentación

Applets
Beans
JDBC
Servlets
JSP Java Server Pages

Día 2: Programación avanzada

Excepciones
I/O Streams
Threads
JNI Java Native Interface
Programación en red

Día 3: Programación UI

Día 5: Tecnologías Java II:
Aplicaciones Distribuidas

Introducción
RMI Remote Method Invocation
CORBA Java IDL
EJB Enterprise Java Beans

Introducción
AWT Abstract Window Toolkit
Swing Java Foundation Classes

Curso de JAVA

5

Curso de JAVA

6



1





Día 1: Programación en Java

Introducción: Historia Java

Introduccion

•Historia Java
•Programación Orientada a Objetos
•Java y la Industria. Tecnologías
•Herramientas de desarrollo

JDK Java Development Kit
RAD’s: Jbuilder, Java
Workshop…

Sintaxis

•Variables
•Operadores
•Estructuras de programación

Objetos
•Conceptos básicos
•Variables miembro
•Variables finales
•Métodos
•Clases y métodos finales
•Clases internas
•Transformaciones (Casting)
•Paquetes
•Herencia
•Interfaces y clases abstractas
•Permisos de acceso
•Polimorfismo
Documentación
•Filosofía
•Javadoc

•1991: Sun Microsystems diseña un lenguaje diseñado para sistemas
embebidos,(set-top-boxes), electrodomésticos.
•Lenguaje sencillo, pequeño, neutro.
•Ninguna empresa muestra interés por el lenguaje
•1995: Java se introduce en Internet, lenguaje muy apropiado
•Netscape 2.0 introduce la primera JVM en un navegador WWW
(Máquina virtual Java)
•Filosofía Java: “Write once, run everywhere”
•1997: Aparece Java 1.1. Muchas mejoras respecto a 1.0
•1998: Java 1.2 (Java 2). Plataforma muy madura
•Apoyado por grandes empresas: IBM, Oracle, Inprise, Hewtlett-
Packard, Netscape, Sun
•1999: Java Enterprise Edition. Java comienza a ser una plataforma
de desarrollo profesional.

Curso de JAVA

7

Curso de JAVA

8

Introducción: Programación

Orientada a objetos

Introducción: Programación

Orientada a objetos II

Directores proyecto

•Rapidez desarrollo
•Menores costes
•Mantenimiento sencillo

Características

Diseñadores y analistas

•Modelado rápido
•Diseño claro

Programadores

•Elegancia
•Claridad
•Reutilización código
•...

Inconvenientes

•Curva de aprendizaje

•Encapsulación: CONTROL DE ACCESO
•Herencia: REUTILIZACIÓN DE CODIGO
•Polimorfismo: MODELADO JERARQUIZADO

Lenguajes

Java

•SmallTalk: Curva de aprendizaje dificil
•C++: No hay librerías estándar, gestión de memoria

•OOP puro
•Sencillo
•No hay gestión de memoria (Garbage Collector)
•Librerías estándar
•Multiplataforma

Curso de JAVA

9

Curso de JAVA

10

Introducción: Plataforma java

Introducción: Java: Tecnologías

Programación

JavaBeans

Programación gráfica

Servidor

Java Server Pages

Servlets

JNI

Programación UI

java.*

AWT

Swing

Java3D

Java2D

WWW

Applets

Sistemas embebidos

RMI

Curso de JAVA

11

Curso de JAVA

12

Programación distribuida

CORBA

JINI

JavaSpaces

Bases de datos

JDBC

Enterprise JavaBeans



2





Introducción: Herramientas

JDK Java Development Kit

•java (Máquina Virtual)
•javac (Compilador bytecode)
•javadoc (Documentación)
•jdb (Depurador consola)
•clases java.*
•Documentación
•...

Entornos RAD

•Jbuilder 3.0
•Symantec Café
•Oracle Jdeveloper
•Sun Java Workshop

•Modelado visual
•Depuración
•Rapidez de desarrollo

Introducción: Hola Mundo (Ejemplo 1)

HolaMundo.java

Class HolaMundo {

public static void main (String[] argv) {
System.out.println(“Hola Mundo”)
}
}

Compilar

javac HolaMundo.java

Ejecutar

java HolaMundo

Hola Mundo

Curso de JAVA

13

Curso de JAVA

14

Introducción: Ejemplo1

Introducción: Geometria.java

Curso de JAVA

15

Curso de JAVA

16

// fichero Geometria.java

public abstract class Geometria {

// clase abstracta que no puede tener objetos
public abstract double area();
public abstract double perimetro();

}

Introducción: Rectangulo.java

// fichero Rectangulo.java

class Rectangulo extends Geometria {

// definición de las variables miembro
private static int numRectangulos = 0;
protected double x1, y1, x2, y2;
// constructor por defecto (sin argumentos)
// se define mediante una llamada al constructor general
public Rectangulo(){ this(0, 0, 1.0, 1.0); }
// constructor de la clase
public Rectangulo(double p1x, double p1y, double p2x, double p2y) {

x1 = p1x;
x2 = p2x;
y1 = p1y;
y2 = p2y;
numRectangulos++;

}
public double area() { return (x1-x2)*(y1-y2); }
public double perimetro() { return 2.0 * ((x1-x2)+(y1-y2)); }

} // fin de la clase Rectangulo

Introducción: Circulo.java

// fichero Circulo.java

public class Circulo extends Geometria {

static int numCirculos=0;
public static final double PI=3.14159265358979323846;
public double x, y, r;

public Circulo() { this(0.0, 0.0, 1.0); }
public Circulo(double r) { this(0.0, 0.0, r); }
public Circulo(double x, double y, double r) {

this.x=x; this.y=y; this.r=r;
numCirculos++;

}
public Circulo(Circulo c) { this(c.x, c.y, c.r); }
// método de objeto para comparar círculos
public Circulo elMayor(Circulo c) {

if (this.r>=c.r) return this; else return c;

}
// método de clase para comparar círculos
public static Circulo elMayor(Circulo c, Circulo d) {

if (c.r>=d.r) return c; else return d;

}
public double area() { return PI * r * r; }
public double perimetro() { return 2.0 * PI * r; }

} // fin de la clase Circulo

Curso de JAVA

17

Curso de JAVA

18



3





Introducción: Dibujable.java

Introducción: RectanguloGrafico.java

// fichero Dibujable.java

import java.awt.Graphics;

public interface Dibujable {

public void dibujar(Graphics dw);
public void setPosicion(double x, double y);

}

Curso de JAVA

// Fichero RectanguloGrafico.java
import java.awt.Graphics;
import java.awt.Color;

class RectanguloGrafico extends Rectangulo implements Dibujable
{

Color color;
// constructor
public RectanguloGrafico(double x1, double y1, double x2,double y2, Color unColor) {

// llamada al constructor de Rectangulo
super(x1, y1, x2, y2);
this.color = unColor;

}
// métodos de la interface Dibujable
public void dibujar(Graphics dw) {

dw.setColor(color);
dw.drawRect((int)x1, (int)y1, (int)(x2-x1), (int)(y2-y1));

}
public void setPosicion(double x, double y) {

;

}

} // fin de la clase RectanguloGrafico

19

Curso de JAVA

20

Introducción: CirculoGrafico.java

Introducción: PanelDibujo.java

// fichero CirculoGrafico.java

import java.awt.Graphics;
import java.awt.Color;

public class CirculoGrafico extends Circulo implements Dibujable {
// se heredan las variables y métodos de la clase Circulo
Color color;
// constructor
public CirculoGrafico(double x, double y, double r, Color unColor) {

// llamada al constructor de Circulo
super(x, y, r);
this.color = unColor;

}
// métodos de la interface Dibujable
public void dibujar(Graphics dw) {

dw.setColor(color);
dw.drawOval((int)(x-r), (int)(y-r), (int)(2.0*r), (int)(2.0*r));

}
public void setPosicion(double x, double y) {

;

}

} // fin de la clase CirculoGrafico

// fichero PanelDibujo.java

import java.awt.*;
import java.util.Vector;
import java.util.Enumeration;

public class PanelDibujo extends Panel {

private Vector v;
// constructor
public PanelDibujo(Vector vect) {

super(new FlowLayout());
this.v = vect;

}
public void paint(Graphics g) {

Dibujable dib;
Enumeration e;
e = v.elements();
while(e.hasMoreElements()){

dib=(Dibujable)e.nextElement();
dib.dibujar(g);

}

}
} // Fin de la clase DrawWindow

Curso de JAVA

21

Curso de JAVA

22

Introducción: VentanaCerrable.java

Introducción: Ejemplo1.java

// Fichero VentanaCerrable.java

import java.awt.*;
import java.awt.event.*;

class VentanaCerrable extends Frame implements WindowListener {

public VentanaCerrable() {

super();

}
public VentanaCerrable(String title) {

super(title);
setSize(500,500);
addWindowListener(this);

}

}

public void windowActivated(WindowEvent e) {;}
public void windowClosed(WindowEvent e) {;}
public void windowClosing(WindowEvent e) {System.exit(0);}
public void windowDeactivated(WindowEvent e) {;}
public void windowDeiconified(WindowEvent e) {;}
public void windowIconified(WindowEvent e) {;}
public void windowOpened(WindowEvent e) {;}

// fichero Ejemplo1.java
import java.util.Vector;
import java.awt.*;

class Ejemplo1 {
public static void main(String arg[]) throws InterruptedException
{
System.out.println("Comienza main()...");
Circulo c = new Circulo(2.0, 2.0, 4.0);
System.out.println("Radio = " + c.r + " unidades.");
System.out.println("Centro = (" + c.x + "," + c.y + ") unidades.");
Circulo c1 = new Circulo(1.0, 1.0, 2.0);
Circulo c2 = new Circulo(0.0, 0.0, 3.0);
c = c1.elMayor(c2);
System.out.println("El mayor radio es " + c.r + ".");
c = new Circulo(); // c.r = 0.0;
c = Circulo.elMayor(c1, c2);
System.out.println("El mayor radio es " + c.r + ".");
System.out.println("Termina main()...");


Curso de JAVA

23

Curso de JAVA

Continuación...

24



4





Introducción: Ejemplo1.java (cont)

Introducción: Ejemplo1

VentanaCerrable ventana = new VentanaCerrable("Ventana abierta a
  • Links de descarga
http://lwp-l.com/pdf11315

Comentarios de: Curso de Java (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad