instrumentos de trabajo
-
Upload
jorpical -
Category
Technology
-
view
4.063 -
download
3
Transcript of instrumentos de trabajo
![Page 1: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/1.jpg)
Curso de JAVA 1
Curso de JAVACurso de JAVADiciembre 1999Diciembre 1999
Curso de JAVACurso de JAVADiciembre 1999Diciembre 1999
Javier Pardo [email protected] Pardo [email protected]
![Page 2: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/2.jpg)
Curso de JAVA 2
IntroducciónIntroducción
•Información•Recursos WWW•Código ejemplos•Libros•Tutoriales•Programas
Web CursoWeb Curso
•Thinking in Java (2nd Edition)
•Aprenda Java como siestuviera en primero
•Otros.
LibrosLibros
•Sugerencias•Dudas y preguntas
Lista de correoLista de correo
•Trasparencias•Ejemplos•Yo hablando•Vosotros preguntando
ClasesClases
•JDK 1.2.2•Editor
ProgramasProgramas
![Page 3: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/3.jpg)
Curso de JAVA 3
Introducción: LibrosIntroducción: Libros
•Castellano•ETSII Navarra (SS)•Sencillo y claro
Aprenda Java como si estuviera en primeroAprenda Java como si estuviera en primero
•Inglés•Introducción avanzada
Thinking in JavaThinking in Java
![Page 4: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/4.jpg)
Curso de JAVA 4
Introducción: Web del cursoIntroducción: Web del curso
![Page 5: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/5.jpg)
Curso de JAVA 5
Introducción: Listas de correoIntroducción: Listas de correo
•Dudas•Sugerencias•Problemas
[email protected][email protected]
[email protected]@alum.etsii.upm.es
![Page 6: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/6.jpg)
Curso de JAVA 6
Índice del cursoÍndice del curso
Día 1: Programación en JavaIntroducciónSintaxisObjetosDocumentación
Día 4: Tecnologías Java IAppletsBeansJDBCServletsJSP Java Server Pages
Día 5: Tecnologías Java II: Aplicaciones Distribuidas
IntroducciónRMI Remote Method InvocationCORBA Java IDLEJB Enterprise Java BeansDía 3: Programación UI
IntroducciónAWT Abstract Window ToolkitSwing Java Foundation Classes
Día 2: Programación avanzadaExcepcionesI/O StreamsThreadsJNI Java Native InterfaceProgramación en red
![Page 7: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/7.jpg)
Curso de JAVA 7
Día 1: Programación en JavaDía 1: Programación en Java
Introduccion•Historia Java•Programación Orientada a Objetos•Java y la Industria. Tecnologías•Herramientas de desarrollo
JDK Java Development KitRAD’s: Jbuilder, Java Workshop…
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
Sintaxis•Variables •Operadores•Estructuras de programación Documentación
•Filosofía•Javadoc
![Page 8: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/8.jpg)
Curso de JAVA 8
Introducción: Historia JavaIntroducción: Historia Java
•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.
![Page 9: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/9.jpg)
Curso de JAVA 9
Introducción: Programación Orientada a objetos
Introducción: Programación Orientada a objetos
•Rapidez desarrollo•Menores costes•Mantenimiento sencillo
Directores proyectoDirectores proyecto
•Modelado rápido•Diseño claroDiseñadores y analistasDiseñadores y analistas
•Elegancia•Claridad•Reutilización código•...
ProgramadoresProgramadores
•Curva de aprendizajeInconvenientesInconvenientes
![Page 10: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/10.jpg)
Curso de JAVA 10
Introducción: Programación Orientada a objetos II
Introducción: Programación Orientada a objetos II
•Encapsulación: CONTROL DE ACCESO•Herencia: REUTILIZACIÓN DE CODIGO•Polimorfismo: MODELADO JERARQUIZADO
CaracterísticasCaracterísticas
•OOP puro•Sencillo•No hay gestión de memoria (Garbage Collector)•Librerías estándar•Multiplataforma
•OOP puro•Sencillo•No hay gestión de memoria (Garbage Collector)•Librerías estándar•Multiplataforma
JavaJava
•SmallTalk: Curva de aprendizaje dificil•C++: No hay librerías estándar, gestión de memoria
LenguajesLenguajes
![Page 11: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/11.jpg)
Curso de JAVA 11
Introducción: Plataforma javaIntroducción: Plataforma java
![Page 12: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/12.jpg)
Curso de JAVA 12
Introducción: Java: TecnologíasIntroducción: Java: Tecnologías
AppletsApplets
JavaBeansJavaBeans
ServletsServlets
Enterprise JavaBeansEnterprise JavaBeans
JDBCJDBC
RMIRMI
Java Server PagesJava Server Pages
AWTAWT
ServidorServidor
Bases de datosBases de datos
Programación distribuidaProgramación distribuida
WWWWWW
JNIJNI
ProgramaciónProgramación
Java3DJava3D
Java2DJava2DProgramación gráficaProgramación gráfica
Programación UIProgramación UI
CORBACORBA
SwingSwingjava.*java.*
JINIJINI
Sistemas embebidosSistemas embebidos
JavaSpacesJavaSpaces
![Page 13: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/13.jpg)
Curso de JAVA 13
Introducción: HerramientasIntroducción: Herramientas
•java (Máquina Virtual)•javac (Compilador bytecode)•javadoc (Documentación)•jdb (Depurador consola)•clases java.*•Documentación•...
JDK Java Development KitJDK Java Development Kit
•Modelado visual•Depuración•Rapidez de desarrollo
Entornos RADEntornos RAD•Jbuilder 3.0•Symantec Café•Oracle Jdeveloper•Sun Java Workshop
![Page 14: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/14.jpg)
Curso de JAVA 14
Introducción: Hola Mundo (Ejemplo 1)Introducción: Hola Mundo (Ejemplo 1)
Class HolaMundo {
public static void main (String[] argv) { System.out.println(“Hola Mundo”) }}
javac HolaMundo.java
java HolaMundo
Hola Mundo
CompilarCompilar
EjecutarEjecutar
HolaMundo.javaHolaMundo.java
![Page 15: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/15.jpg)
Curso de JAVA 15
Introducción: Ejemplo1Introducción: Ejemplo1
![Page 16: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/16.jpg)
Curso de JAVA 16
Introducción: Geometria.javaIntroducción: Geometria.java
// fichero Geometria.java
public abstract class Geometria {// clase abstracta que no puede tener objetospublic abstract double area();public abstract double perimetro();
}
![Page 17: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/17.jpg)
Curso de JAVA 17
Introducción: Rectangulo.javaIntroducción: Rectangulo.java
// fichero Rectangulo.java
class Rectangulo extends Geometria {// definición de las variables miembroprivate static int numRectangulos = 0;protected double x1, y1, x2, y2;// constructor por defecto (sin argumentos)// se define mediante una llamada al constructor generalpublic Rectangulo(){ this(0, 0, 1.0, 1.0); }// constructor de la clasepublic 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
![Page 18: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/18.jpg)
Curso de JAVA 18
Introducción: Circulo.javaIntroducció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írculospublic Circulo elMayor(Circulo c) {
if (this.r>=c.r) return this; else return c;} // método de clase para comparar círculospublic 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
![Page 19: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/19.jpg)
Curso de JAVA 19
Introducción: Dibujable.javaIntroducción: Dibujable.java
// fichero Dibujable.java
import java.awt.Graphics;
public interface Dibujable {public void dibujar(Graphics dw);public void setPosicion(double x, double y);
}
![Page 20: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/20.jpg)
Curso de JAVA 20
Introducción: RectanguloGrafico.javaIntroducción: RectanguloGrafico.java
// Fichero RectanguloGrafico.javaimport java.awt.Graphics;import java.awt.Color;
class RectanguloGrafico extends Rectangulo implements Dibujable{
Color color;// constructorpublic RectanguloGrafico(double x1, double y1, double x2,double y2, Color unColor) {
// llamada al constructor de Rectangulosuper(x1, y1, x2, y2);this.color = unColor;
}// métodos de la interface Dibujablepublic 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
![Page 21: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/21.jpg)
Curso de JAVA 21
Introducción: CirculoGrafico.javaIntroducción: CirculoGrafico.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 CirculoColor color;// constructorpublic CirculoGrafico(double x, double y, double r, Color unColor) {
// llamada al constructor de Circulosuper(x, y, r);this.color = unColor;
}// métodos de la interface Dibujablepublic 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
![Page 22: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/22.jpg)
Curso de JAVA 22
Introducción: PanelDibujo.javaIntroducción: PanelDibujo.java// fichero PanelDibujo.java
import java.awt.*;import java.util.Vector;import java.util.Enumeration;
public class PanelDibujo extends Panel {private Vector v;// constructorpublic 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
![Page 23: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/23.jpg)
Curso de JAVA 23
Introducción: VentanaCerrable.javaIntroducción: VentanaCerrable.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) {;}
}
![Page 24: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/24.jpg)
Curso de JAVA 24
Introducción: Ejemplo1.javaIntroducción: Ejemplo1.java
// fichero Ejemplo1.javaimport 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()..."); …
Continuación...
![Page 25: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/25.jpg)
Curso de JAVA 25
Introducción: Ejemplo1.java (cont)Introducción: Ejemplo1.java (cont)
VentanaCerrable ventana = new VentanaCerrable("Ventana abierta al mundo..."); Vector v=new Vector();
CirculoGrafico cg1 = new CirculoGrafico(200, 200, 100, Color.red); CirculoGrafico cg2 = new CirculoGrafico(300, 200, 100, Color.blue); RectanguloGrafico rg = new RectanguloGrafico(50, 50, 450, 350, Color.green);
v.addElement(cg1); v.addElement(cg2); v.addElement(rg);
PanelDibujo mipanel = new PanelDibujo(v); ventana.add(mipanel); ventana.setSize(500, 400); ventana.setVisible(true); } // fin de main()} // fin de class Ejemplo1...
![Page 26: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/26.jpg)
Curso de JAVA 26
Introducción: Ejemplo1Introducción: Ejemplo1
![Page 27: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/27.jpg)
Curso de JAVA 27
![Page 28: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/28.jpg)
Curso de JAVA 28
![Page 29: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/29.jpg)
Curso de JAVA 29
![Page 30: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/30.jpg)
Curso de JAVA 30
![Page 31: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/31.jpg)
Curso de JAVA 31
![Page 32: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/32.jpg)
Curso de JAVA 32
![Page 33: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/33.jpg)
Curso de JAVA 33
![Page 34: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/34.jpg)
Curso de JAVA 34
![Page 35: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/35.jpg)
Curso de JAVA 35
![Page 36: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/36.jpg)
Curso de JAVA 36
![Page 37: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/37.jpg)
Curso de JAVA 37
![Page 38: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/38.jpg)
Curso de JAVA 38
![Page 39: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/39.jpg)
Curso de JAVA 39
![Page 40: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/40.jpg)
Curso de JAVA 40
![Page 41: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/41.jpg)
Curso de JAVA 41
![Page 42: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/42.jpg)
Curso de JAVA 42
![Page 43: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/43.jpg)
Curso de JAVA 43
![Page 44: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/44.jpg)
Curso de JAVA 44
![Page 45: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/45.jpg)
Curso de JAVA 45
![Page 46: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/46.jpg)
Curso de JAVA 46
![Page 47: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/47.jpg)
Curso de JAVA 47
![Page 48: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/48.jpg)
Curso de JAVA 48
![Page 49: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/49.jpg)
Curso de JAVA 49
![Page 50: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/50.jpg)
Curso de JAVA 50
![Page 51: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/51.jpg)
Curso de JAVA 51
![Page 52: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/52.jpg)
Curso de JAVA 52
![Page 53: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/53.jpg)
Curso de JAVA 53
![Page 54: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/54.jpg)
Curso de JAVA 54
![Page 55: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/55.jpg)
Curso de JAVA 55
![Page 56: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/56.jpg)
Curso de JAVA 56
![Page 57: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/57.jpg)
Curso de JAVA 57
![Page 58: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/58.jpg)
Curso de JAVA 58
![Page 59: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/59.jpg)
Curso de JAVA 59
![Page 60: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/60.jpg)
Curso de JAVA 60
![Page 61: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/61.jpg)
Curso de JAVA 61
![Page 62: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/62.jpg)
Curso de JAVA 62
![Page 63: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/63.jpg)
Curso de JAVA 63
![Page 64: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/64.jpg)
Curso de JAVA 64
![Page 65: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/65.jpg)
Curso de JAVA 65
![Page 66: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/66.jpg)
Curso de JAVA 66
![Page 67: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/67.jpg)
Curso de JAVA 67
![Page 68: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/68.jpg)
Curso de JAVA 68
![Page 69: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/69.jpg)
Curso de JAVA 69
![Page 70: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/70.jpg)
Curso de JAVA 70
![Page 71: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/71.jpg)
Curso de JAVA 71
![Page 72: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/72.jpg)
Curso de JAVA 72
Ejemplo: Alquiler de vehículosEjemplo: Alquiler de vehículos
Una agencia de alquiler de vehículos sin conductor dispone de camiones y de turismos. A su vez los turismos pueden ser utilitarios y familiares.
![Page 73: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/73.jpg)
Curso de JAVA 73
Ejemplo: Vehiculo.javaEjemplo: Vehiculo.java
// fichero Vehiculo.java
public abstract class Vehiculo {protected String matricula;protected boolean alquilado;
public Vehiculo(String mat, boolean alq) { matricula=mat; alquilado=alq;
}
public abstract void alquilar(int dia);public abstract void devolver(int dia);
public abstract void showInfo();
} // fin de clase Vehiculo
![Page 74: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/74.jpg)
Curso de JAVA 74
Ejemplo: Turismo.javaEjemplo: Turismo.java
// fichero Turismo.javapublic class Turismo extends Vehiculo {
protected double precioKm;protected int kmAlquiler, kmDevolucion;protected static int numTurismos, numTurAlquilados;
public Turismo(String mat, boolean alq, double prKm) { // llamada constructor de la superclase. Debe ser // la primera sentencia del constructorsuper(mat, alq);precioKm = prKm;kmAlquiler = 0;kmDevolucion = 0;numTurismos++;
}
public void alquilar(int kmAlq) {if (alquilado == true)
System.out.println("El turismo " + matricula + " esta ya alquilado.");else {
kmAlquiler = kmAlq;System.out.println("Se alquila un turismo con " + kmAlquiler + "km.");numTurAlquilados++;alquilado = true;
}}
![Page 75: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/75.jpg)
Curso de JAVA 75
Ejemplo: Turismo.java IIEjemplo: Turismo.java II
public void devolver(int kmDev) {if (alquilado == true) {
kmDevolucion = kmDev;System.out.print("Se devuelve un turismo con " + kmDevolucion + "km. ");System.out.println("Precio a abonar: " +
(kmDevolucion-kmAlquiler)*precioKm + " Euros");numTurAlquilados--;alquilado = false;
} else
System.out.println("El turismo " + matricula + " no esta alquilado.");}
public void showInfo() {System.out.println("\nDatos de un Turismo:");System.out.println("Matricula: " + matricula);System.out.println("Alquilado: " + ((alquilado==true)? "Si": "No"));System.out.println("Precio por km: " + precioKm + " Euros");System.out.println("Numero total de turismos: " + numTurismos);System.out.println("Numero de turismos alquilados: " + numTurAlquilados);
}
} // fin de clase Turismo
![Page 76: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/76.jpg)
Curso de JAVA 76
Ejemplo: Camion.javaEjemplo: Camion.java
// fichero Camion.java
public class Camion extends Vehiculo {protected double precioDia;protected int diaAlquiler, diaDevolucion;protected static int numCamiones, numCamAlquilados;
public Camion(String mat, boolean alq, double prD) { // llamada constructor de la superclase. Debe ser // la primera sentencia del constructorsuper(mat, alq);precioDia = prD;diaAlquiler = 0;diaDevolucion = 0;numCamiones++;
}
![Page 77: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/77.jpg)
Curso de JAVA 77
Ejemplo: Camion.java IIEjemplo: Camion.java II
public void alquilar(int diaAlq) {if (alquilado==true) {
System.out.println("El camion " + matricula + " esta ya alquilado.");} else {
diaAlquiler = diaAlq;System.out.println("Se alquila un camion el dia " + diaAlquiler + ".");numCamAlquilados++;alquilado = true;
}}
public void devolver(int diaDev) {if (alquilado==true) {
diaDevolucion = diaDev;System.out.print("Se devuelve un camion el dia " + diaDevolucion + ". ");System.out.println("Precio a abonar: " +
(diaDevolucion-diaAlquiler)*precioDia + " Euros");numCamAlquilados--;alquilado = false;
} elseSystem.out.println("El camion " + matricula + " no esta alquilado.");
}
![Page 78: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/78.jpg)
Curso de JAVA 78
Ejemplo: Camion.java IIIEjemplo: Camion.java III
public void showInfo() {System.out.println("\nDatos de un Camion:");System.out.println("Matricula: " + matricula);System.out.println("Alquilado: " + ((alquilado==true)? "Si": "No"));System.out.println("Precio por dia: " + precioDia + " Euros");System.out.println("Numero total de camiones: " + numCamiones);System.out.println("Numero de camiones alquilados: " + numCamAlquilados);
}
} // fin de clase Camion
![Page 79: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/79.jpg)
Curso de JAVA 79
Ejemplo: AgenciaAlquiler.javaEjemplo: AgenciaAlquiler.java
// fichero AgenciaAlquiler.java
class AgenciaAlquiler { public static void main(String [] arg) { Vehiculo [] avis = new Vehiculo[4]; avis[0] = new Camion("SS-4386-AN", false, 100); avis[1] = new Turismo("BI-6666-ZZ", false, 0.3); avis[2] = new Turismo("HU-1976-A", false, 0.4); avis[3] = new Camion("VI-1234-HL", false, 120); System.out.println("\nSE ALQUILAN DOS VEHICULOS:"); avis[2].alquilar(23000); // alquilar turismo con 23000 km avis[3].alquilar(5); // alquilar camion el dia 5
// intento de volver a alquilar avis[2].alquilar(23000); avis[3].alquilar(5);
![Page 80: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/80.jpg)
Curso de JAVA 80
Ejemplo: AgenciaAlquiler.java IIEjemplo: AgenciaAlquiler.java II
System.out.println("\nSE IMPRIMEN LOS DATOS " + "DE LOS VEHICULOS:"); for (int i=0; i<avis.length; i++) avis[i].showInfo();
System.out.println("\nSE DEVUELVEN DOS VEHICULOS:"); avis[2].devolver(25000); // devolver turismo con 25000 km avis[3].devolver(9); // devolver camion el dia 9
// intento de devolver de nuevo avis[2].devolver(25000); avis[3].devolver(9);
System.out.println("\nYa he terminado"); } // fin de main()
} // fin de la clase AgenciaAlquiler
![Page 81: instrumentos de trabajo](https://reader036.fdocuments.co/reader036/viewer/2022062513/557b0448d8b42af74a8b4d7e/html5/thumbnails/81.jpg)
Curso de JAVA 81
Resultado Ejemplo 2Resultado Ejemplo 2
SE ALQUILAN DOS VEHICULOS:Se alquila un turismo con 23000km.Se alquila un camion el dia 5.El turismo HU-1976-A esta ya alquilado.El camion VI-1234-HL esta ya alquilado.SE IMPRIMEN LOS DATOS DE LOS VEHICULOS:Datos de un Camion:Matricula: SS-4386-ANAlquilado: NoPrecio por dia: 100.0 EurosNumero total de camiones: 2Numero de camiones alquilados: 1Datos de un Turismo:Matricula: BI-6666-ZZAlquilado: NoPrecio por km: 0.3 EurosNumero total de turismos: 2Numero de turismos alquilados: 1
Datos de un Turismo:Matricula: HU-1976-AAlquilado: SiPrecio por km: 0.4 EurosNumero total de turismos: 2Numero de turismos alquilados: 1Datos de un Camion:Matricula: VI-1234-HLAlquilado: SiPrecio por dia: 120.0 EurosNumero total de camiones: 2Numero de camiones alquilados: 1SE DEVUELVEN DOS VEHICULOS:Se devuelve un turismo con 25000km. Precio a abonar: 800.0 EurosSe devuelve un camion el dia 9. Precio a abonar: 480.0 EurosEl turismo HU-1976-A no esta alquilado.El camion VI-1234-HL no esta alquilado.Ya he terminado