SlideShare uma empresa Scribd logo
1 de 81
Curso de JAVA Diciembre 1999 Javier Pardo jpardo@upmdie.upm.es
Introducción ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Web Curso ,[object Object],[object Object],[object Object],[object Object],[object Object],Libros ,[object Object],[object Object],Lista de correo ,[object Object],[object Object],[object Object],[object Object],Clases ,[object Object],[object Object],Programas
Introducción: Libros ,[object Object],[object Object],[object Object],Aprenda Java como si estuviera en primero ,[object Object],[object Object],Thinking in Java
Introducción: Web del curso
Introducción: Listas de correo ,[object Object],[object Object],[object Object],[email_address] [email_address]
Índice del curso Día 1 :  Programación en Java Introducción Sintaxis Objetos Documentación Día 4: Tecnologías Java I Applets Beans JDBC Servlets JSP Java Server Pages Día 5: Tecnologías Java II:  Aplicaciones Distribuidas Introducción RMI Remote Method Invocation CORBA Java IDL EJB Enterprise Java Beans Día 3: Programación UI Introducción AWT Abstract Window Toolkit Swing Java Foundation Classes Día 2: Programación avanzada Excepciones I/O Streams Threads JNI Java Native Interface Programación en red
Día 1: Programación en Java ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introducción: Historia Java ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introducción: Programación Orientada a objetos Directores proyecto Diseñadores y analistas Programadores Inconvenientes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introducción: Programación Orientada a objetos II ,[object Object],[object Object],[object Object],Características ,[object Object],[object Object],[object Object],[object Object],[object Object],Java ,[object Object],[object Object],Lenguajes
Introducción: Plataforma java
Introducción: Java: Tecnologías Applets JavaBeans Servlets Enterprise JavaBeans JDBC RMI Java Server Pages AWT Servidor Bases de datos Programación distribuida WWW JNI Programación Java3D Java2D Programación gráfica Programación UI CORBA Swing java.* JINI Sistemas embebidos JavaSpaces
Introducción: Herramientas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],JDK Java Development Kit ,[object Object],[object Object],[object Object],Entornos RAD ,[object Object],[object Object],[object Object],[object Object]
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 Compilar Ejecutar HolaMundo.java
Introducción: Ejemplo1
Introducción: Geometria.java // 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
Introducció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); }
Introducción: RectanguloGrafico.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
Introducció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 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
Introducció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; // 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
Introducció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) { supe r(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) {;} }
Introducción: Ejemplo1.java // 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()...");  …  Continuación...
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...
Introducción: Ejemplo1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Ejemplo: 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.
Ejemplo: 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
Ejemplo: Turismo.java // fichero Turismo.java public 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 constructor super (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; } }
Ejemplo: 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("Datos 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
Ejemplo: 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 constructor super(mat, alq); precioDia = prD; diaAlquiler = 0; diaDevolucion = 0; numCamiones++; }
Ejemplo: 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; } else System.out.println("El camion " + matricula + " no esta alquilado."); }
Ejemplo: Camion.java III public void showInfo() { System.out.println("Datos 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
Ejemplo: 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("SE 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);
Ejemplo: AgenciaAlquiler.java II System.out.println(&quot;SE IMPRIMEN LOS DATOS &quot; + &quot;DE LOS VEHICULOS:&quot;); for (int i=0; i<avis.length; i++) avis[i].showInfo(); System.out.println(&quot;SE DEVUELVEN DOS VEHICULOS:&quot;); 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(&quot;Ya he terminado&quot;); } // fin de main() } // fin de la clase AgenciaAlquiler
Resultado 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-AN Alquilado: No Precio por dia: 100.0 Euros Numero total de camiones: 2 Numero de camiones alquilados: 1 Datos de un Turismo: Matricula: BI-6666-ZZ Alquilado: No Precio por km: 0.3 Euros Numero total de turismos: 2 Numero de turismos alquilados: 1 Datos de un Turismo: Matricula: HU-1976-A Alquilado: Si Precio por km: 0.4 Euros Numero total de turismos: 2 Numero de turismos alquilados: 1 Datos de un Camion: Matricula: VI-1234-HL Alquilado: Si Precio por dia: 120.0 Euros Numero total de camiones: 2 Numero de camiones alquilados: 1 SE DEVUELVEN DOS VEHICULOS: Se devuelve un turismo con 25000km. Precio a abonar: 800.0 Euros Se devuelve un camion el dia 9. Precio a abonar: 480.0 Euros El turismo HU-1976-A no esta alquilado. El camion VI-1234-HL no esta alquilado. Ya he terminado

Mais conteúdo relacionado

Mais procurados

Introducción a la programación y la informática. Tema 4
Introducción a la programación y la informática. Tema 4Introducción a la programación y la informática. Tema 4
Introducción a la programación y la informática. Tema 4Andres Garcia Garcia
 
Manuales seminario java-manualdejava-sem 3 - 4
Manuales seminario java-manualdejava-sem 3 - 4Manuales seminario java-manualdejava-sem 3 - 4
Manuales seminario java-manualdejava-sem 3 - 4Robert Wolf
 
Tema 10 clase abstractas e interfaz
Tema 10 clase abstractas e interfazTema 10 clase abstractas e interfaz
Tema 10 clase abstractas e interfazRobert Wolf
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaAngel Vázquez Patiño
 
Introducción a la programación en Python (día 2)
Introducción a la programación en Python (día 2)Introducción a la programación en Python (día 2)
Introducción a la programación en Python (día 2)CodeSyntax
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetosBelenMonse
 

Mais procurados (20)

Introducción a la programación y la informática. Tema 4
Introducción a la programación y la informática. Tema 4Introducción a la programación y la informática. Tema 4
Introducción a la programación y la informática. Tema 4
 
Semana 3 Herencia en Java
Semana 3   Herencia en JavaSemana 3   Herencia en Java
Semana 3 Herencia en Java
 
Java
JavaJava
Java
 
Manuales seminario java-manualdejava-sem 3 - 4
Manuales seminario java-manualdejava-sem 3 - 4Manuales seminario java-manualdejava-sem 3 - 4
Manuales seminario java-manualdejava-sem 3 - 4
 
Definición de clases en POO
Definición de clases en POODefinición de clases en POO
Definición de clases en POO
 
Tema 10 clase abstractas e interfaz
Tema 10 clase abstractas e interfazTema 10 clase abstractas e interfaz
Tema 10 clase abstractas e interfaz
 
03 java poo_parte_2
03 java poo_parte_203 java poo_parte_2
03 java poo_parte_2
 
8.Clases y objetos Java
8.Clases y objetos Java8.Clases y objetos Java
8.Clases y objetos Java
 
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓNJAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
Recolección de basura
Recolección de basuraRecolección de basura
Recolección de basura
 
Introducción a Scala
Introducción a ScalaIntroducción a Scala
Introducción a Scala
 
Introducción a la programación en Python (día 2)
Introducción a la programación en Python (día 2)Introducción a la programación en Python (día 2)
Introducción a la programación en Python (día 2)
 
4 Introducción al lenguaje Scala
4 Introducción al lenguaje Scala4 Introducción al lenguaje Scala
4 Introducción al lenguaje Scala
 
Semana 6 Módulos Clases y Objetos
Semana 6   Módulos Clases y ObjetosSemana 6   Módulos Clases y Objetos
Semana 6 Módulos Clases y Objetos
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetos
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
Datos Previos
Datos PreviosDatos Previos
Datos Previos
 
Programación Orientada a Objetos para Python
Programación Orientada a Objetos para PythonProgramación Orientada a Objetos para Python
Programación Orientada a Objetos para Python
 

Destaque

Libro manual programacion-visual_basic_.net_(ilustrado_con_ejemplos)by_iberid...
Libro manual programacion-visual_basic_.net_(ilustrado_con_ejemplos)by_iberid...Libro manual programacion-visual_basic_.net_(ilustrado_con_ejemplos)by_iberid...
Libro manual programacion-visual_basic_.net_(ilustrado_con_ejemplos)by_iberid...Camilo Lopez
 
490192 diseno-orientado-a-objetos-con-uml-by-raul-alarcon
490192 diseno-orientado-a-objetos-con-uml-by-raul-alarcon490192 diseno-orientado-a-objetos-con-uml-by-raul-alarcon
490192 diseno-orientado-a-objetos-con-uml-by-raul-alarconsheikl
 

Destaque (6)

001.1 rup cap 1
001.1 rup cap 1001.1 rup cap 1
001.1 rup cap 1
 
Uml
UmlUml
Uml
 
Libro manual programacion-visual_basic_.net_(ilustrado_con_ejemplos)by_iberid...
Libro manual programacion-visual_basic_.net_(ilustrado_con_ejemplos)by_iberid...Libro manual programacion-visual_basic_.net_(ilustrado_con_ejemplos)by_iberid...
Libro manual programacion-visual_basic_.net_(ilustrado_con_ejemplos)by_iberid...
 
490192 diseno-orientado-a-objetos-con-uml-by-raul-alarcon
490192 diseno-orientado-a-objetos-con-uml-by-raul-alarcon490192 diseno-orientado-a-objetos-con-uml-by-raul-alarcon
490192 diseno-orientado-a-objetos-con-uml-by-raul-alarcon
 
Libro analisis de sistemas
Libro analisis de sistemasLibro analisis de sistemas
Libro analisis de sistemas
 
Como usar scribd
Como usar scribdComo usar scribd
Como usar scribd
 

Semelhante a instrumentos de trabajo

Semelhante a instrumentos de trabajo (20)

Programando en java
Programando en javaProgramando en java
Programando en java
 
Introducción a la programación y la informática. Tema 2
Introducción a la programación y la informática. Tema 2Introducción a la programación y la informática. Tema 2
Introducción a la programación y la informática. Tema 2
 
Entornodedesarrollodejava
EntornodedesarrollodejavaEntornodedesarrollodejava
Entornodedesarrollodejava
 
Prog_BasicaJava.pdf
Prog_BasicaJava.pdfProg_BasicaJava.pdf
Prog_BasicaJava.pdf
 
HackDay Java 9 Spanish version
HackDay Java 9 Spanish versionHackDay Java 9 Spanish version
HackDay Java 9 Spanish version
 
Netbeans ide
Netbeans ideNetbeans ide
Netbeans ide
 
Java
JavaJava
Java
 
Herencia y polimorfismo
Herencia y polimorfismoHerencia y polimorfismo
Herencia y polimorfismo
 
Guia4 java
Guia4 javaGuia4 java
Guia4 java
 
TUTORIAL JAVA
TUTORIAL JAVATUTORIAL JAVA
TUTORIAL JAVA
 
JAVA.PPT
JAVA.PPTJAVA.PPT
JAVA.PPT
 
JAVA (1).PPT
JAVA (1).PPTJAVA (1).PPT
JAVA (1).PPT
 
JAVA (1).PPT
JAVA (1).PPTJAVA (1).PPT
JAVA (1).PPT
 
Prog_BasicaJava (1).pptx
Prog_BasicaJava (1).pptxProg_BasicaJava (1).pptx
Prog_BasicaJava (1).pptx
 
Presentación Java Evolution - GlobalLogic Club
Presentación Java Evolution - GlobalLogic ClubPresentación Java Evolution - GlobalLogic Club
Presentación Java Evolution - GlobalLogic Club
 
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
JRuby: Ruby en un mundo enterprise RubyConf Uruguay 2011
 
Semana9 Vbr
Semana9 VbrSemana9 Vbr
Semana9 Vbr
 
Java
JavaJava
Java
 
Mule Librerias en Java
Mule Librerias en JavaMule Librerias en Java
Mule Librerias en Java
 
Patrones de diseño de software facade e iterator
Patrones de diseño de software facade e iteratorPatrones de diseño de software facade e iterator
Patrones de diseño de software facade e iterator
 

Último

Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesEdomar AR
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 

Último (20)

Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, Aplicaciones
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 

instrumentos de trabajo

  • 1. Curso de JAVA Diciembre 1999 Javier Pardo jpardo@upmdie.upm.es
  • 2.
  • 3.
  • 5.
  • 6. Índice del curso Día 1 : Programación en Java Introducción Sintaxis Objetos Documentación Día 4: Tecnologías Java I Applets Beans JDBC Servlets JSP Java Server Pages Día 5: Tecnologías Java II: Aplicaciones Distribuidas Introducción RMI Remote Method Invocation CORBA Java IDL EJB Enterprise Java Beans Día 3: Programación UI Introducción AWT Abstract Window Toolkit Swing Java Foundation Classes Día 2: Programación avanzada Excepciones I/O Streams Threads JNI Java Native Interface Programación en red
  • 7.
  • 8.
  • 9.
  • 10.
  • 12. Introducción: Java: Tecnologías Applets JavaBeans Servlets Enterprise JavaBeans JDBC RMI Java Server Pages AWT Servidor Bases de datos Programación distribuida WWW JNI Programación Java3D Java2D Programación gráfica Programación UI CORBA Swing java.* JINI Sistemas embebidos JavaSpaces
  • 13.
  • 14. 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 Compilar Ejecutar HolaMundo.java
  • 16. Introducción: Geometria.java // fichero Geometria.java public abstract class Geometria { // clase abstracta que no puede tener objetos public abstract double area(); public abstract double perimetro(); }
  • 17. 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
  • 18. 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
  • 19. Introducció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); }
  • 20. Introducción: RectanguloGrafico.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
  • 21. Introducció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 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
  • 22. Introducció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; // 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
  • 23. Introducció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) { supe r(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) {;} }
  • 24. Introducción: Ejemplo1.java // fichero Ejemplo1.java import java.util.Vector; import java.awt.*; class Ejemplo1 { public static void main( String arg[]) throws InterruptedException { System.out.println(&quot;Comienza main()...&quot;); Circulo c = new Circulo(2.0, 2.0, 4.0); System.out.println(&quot;Radio = &quot; + c.r + &quot; unidades.&quot;); System.out.println(&quot;Centro = (&quot; + c.x + &quot;,&quot; + c.y + &quot;) unidades.&quot;); 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(&quot;El mayor radio es &quot; + c.r + &quot;.&quot;); c = new Circulo(); // c.r = 0.0; c = Circulo.elMayor(c1, c2); System.out.println(&quot;El mayor radio es &quot; + c.r + &quot;.&quot;); System.out.println(&quot;Termina main()...&quot;); … Continuación...
  • 25. Introducción: Ejemplo1.java (cont) VentanaCerrable ventana = new VentanaCerrable(&quot;Ventana abierta al mundo...&quot;); 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...
  • 27.  
  • 28.  
  • 29.  
  • 30.  
  • 31.  
  • 32.  
  • 33.  
  • 34.  
  • 35.  
  • 36.  
  • 37.  
  • 38.  
  • 39.  
  • 40.  
  • 41.  
  • 42.  
  • 43.  
  • 44.  
  • 45.  
  • 46.  
  • 47.  
  • 48.  
  • 49.  
  • 50.  
  • 51.  
  • 52.  
  • 53.  
  • 54.  
  • 55.  
  • 56.  
  • 57.  
  • 58.  
  • 59.  
  • 60.  
  • 61.  
  • 62.  
  • 63.  
  • 64.  
  • 65.  
  • 66.  
  • 67.  
  • 68.  
  • 69.  
  • 70.  
  • 71.  
  • 72. Ejemplo: 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.
  • 73. Ejemplo: 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
  • 74. Ejemplo: Turismo.java // fichero Turismo.java public 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 constructor super (mat, alq); precioKm = prKm; kmAlquiler = 0; kmDevolucion = 0; numTurismos++; } public void alquilar(int kmAlq) { if (alquilado == true) System.out.println(&quot;El turismo &quot; + matricula + &quot; esta ya alquilado.&quot;); else { kmAlquiler = kmAlq; System.out.println(&quot;Se alquila un turismo con &quot; + kmAlquiler + &quot;km.&quot;); numTurAlquilados++; alquilado = true; } }
  • 75. Ejemplo: Turismo.java II public void devolver(int kmDev) { if (alquilado == true ) { kmDevolucion = kmDev; System.out.print(&quot;Se devuelve un turismo con &quot; + kmDevolucion + &quot;km. &quot;); System.out.println(&quot;Precio a abonar: &quot; + (kmDevolucion-kmAlquiler)*precioKm + &quot; Euros&quot;); numTurAlquilados--; alquilado = false ; } else System.out.println(&quot;El turismo &quot; + matricula + &quot; no esta alquilado.&quot;); } public void showInfo() { System.out.println(&quot;Datos de un Turismo:&quot;); System.out.println(&quot;Matricula: &quot; + matricula); System.out.println(&quot;Alquilado: &quot; + ((alquilado==true)? &quot;Si&quot;: &quot;No&quot;)); System.out.println(&quot;Precio por km: &quot; + precioKm + &quot; Euros&quot;); System.out.println(&quot;Numero total de turismos: &quot; + numTurismos); System.out.println(&quot;Numero de turismos alquilados: &quot; + numTurAlquilados); } } // fin de clase Turismo
  • 76. Ejemplo: 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 constructor super(mat, alq); precioDia = prD; diaAlquiler = 0; diaDevolucion = 0; numCamiones++; }
  • 77. Ejemplo: Camion.java II public void alquilar(int diaAlq) { if (alquilado==true) { System.out.println(&quot;El camion &quot; + matricula + &quot; esta ya alquilado.&quot;); } else { diaAlquiler = diaAlq; System.out.println(&quot;Se alquila un camion el dia &quot; + diaAlquiler + &quot;.&quot;); numCamAlquilados++; alquilado = true; } } public void devolver(int diaDev) { if (alquilado==true) { diaDevolucion = diaDev; System.out.print(&quot;Se devuelve un camion el dia &quot; + diaDevolucion + &quot;. &quot;); System.out.println(&quot;Precio a abonar: &quot; + (diaDevolucion-diaAlquiler)*precioDia + &quot; Euros&quot;); numCamAlquilados--; alquilado = false; } else System.out.println(&quot;El camion &quot; + matricula + &quot; no esta alquilado.&quot;); }
  • 78. Ejemplo: Camion.java III public void showInfo() { System.out.println(&quot;Datos de un Camion:&quot;); System.out.println(&quot;Matricula: &quot; + matricula); System.out.println(&quot;Alquilado: &quot; + ((alquilado==true)? &quot;Si&quot;: &quot;No&quot;)); System.out.println(&quot;Precio por dia: &quot; + precioDia + &quot; Euros&quot;); System.out.println(&quot;Numero total de camiones: &quot; + numCamiones); System.out.println(&quot;Numero de camiones alquilados: &quot; + numCamAlquilados); } } // fin de clase Camion
  • 79. Ejemplo: AgenciaAlquiler.java // fichero AgenciaAlquiler.java class AgenciaAlquiler { public static void main(String [] arg) { Vehiculo [] avis = new Vehiculo[4]; avis[0] = new Camion(&quot;SS-4386-AN&quot;, false, 100); avis[1] = new Turismo(&quot;BI-6666-ZZ&quot;, false, 0.3); avis[2] = new Turismo(&quot;HU-1976-A&quot;, false, 0.4); avis[3] = new Camion(&quot;VI-1234-HL&quot;, false, 120); System.out.println(&quot;SE ALQUILAN DOS VEHICULOS:&quot;); 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);
  • 80. Ejemplo: AgenciaAlquiler.java II System.out.println(&quot;SE IMPRIMEN LOS DATOS &quot; + &quot;DE LOS VEHICULOS:&quot;); for (int i=0; i<avis.length; i++) avis[i].showInfo(); System.out.println(&quot;SE DEVUELVEN DOS VEHICULOS:&quot;); 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(&quot;Ya he terminado&quot;); } // fin de main() } // fin de la clase AgenciaAlquiler
  • 81. Resultado 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-AN Alquilado: No Precio por dia: 100.0 Euros Numero total de camiones: 2 Numero de camiones alquilados: 1 Datos de un Turismo: Matricula: BI-6666-ZZ Alquilado: No Precio por km: 0.3 Euros Numero total de turismos: 2 Numero de turismos alquilados: 1 Datos de un Turismo: Matricula: HU-1976-A Alquilado: Si Precio por km: 0.4 Euros Numero total de turismos: 2 Numero de turismos alquilados: 1 Datos de un Camion: Matricula: VI-1234-HL Alquilado: Si Precio por dia: 120.0 Euros Numero total de camiones: 2 Numero de camiones alquilados: 1 SE DEVUELVEN DOS VEHICULOS: Se devuelve un turismo con 25000km. Precio a abonar: 800.0 Euros Se devuelve un camion el dia 9. Precio a abonar: 480.0 Euros El turismo HU-1976-A no esta alquilado. El camion VI-1234-HL no esta alquilado. Ya he terminado