SlideShare una empresa de Scribd logo
1 de 31
Lic. José Angel Quintanilla Rosales
Un programa bien escrito es su propio cielo; un
programa mal escrito es su propio infierno.
[Geoffrey James, El Tao de la Programación]

Limpieza de objetos
¿Cuántas referencias hay a los objetos?
...
Point point = new Point(2,4);
Rectangle rectangle = new Rectangle(point, 20, 20);
point = null;
...
rectangle
point
Poin
t
Rectangle
X
Rectangle
Poin
t

Método public void finalize()
Declarado en Object y heredado por todas
las clases
Cuerpo: liberar recursos
No se garantiza
Ni en el momento en que se ejecuta
Ni que se ejecute
Destructores
Bicicleta

Tanto los atributos como los métodos
tienen un calificador de acceso
Public
Pueden acceder todos los objetos
Private
Sólo puede acceder el código de la misma
clase
Seguridad en acceso
Protected
Sólo puede acceder el código de la
misma clase, de subclases o de clases
en el mismo paquete
Package protected
Sólo puede acceder el código de la
misma clase o de clases en el mismo
paquete
Seguridad en acceso
accesores
Cambiar el tipo de un objeto
No es necesario cuando es “hacia
arriba”
Obligatorio cuando es “hacia
abajo”
Se comprueba en tiempo de ejecución
Casting

Casting
Bicicleta a = new Bicicleta();
Tandem b = new Tandem();
a = b; // No es necesario, porque un tándem es una bicicleta
b = (Tandem) a; // Es necesario porque a es una bicicleta, pero
// el compilador no sabe que hay un tandem.
// Sólo se sabe en tiempo de ejecución. Así
// que le damos la pista al compilador. Si en
// tiempo de ejecución no hay un Tándem en
a,
// habrá un error de tipos en tiempo de
ejecución
instanceof: nos informa si una
variable es instancia de
determinada clase
a instanceof Clase
Tiene en cuenta la transitividad
Interesante para evitar errores de
conversión (casting)
instanceof
Comparar objetos
Mismo objeto (=)
Mismo contenido (equals)
Código hash (hashCode)
Métodos definidos en Object y
redefinibles en subclases
= > equals > hashCode
Operadores de
comparación
finalize
equals, hashCode
toString
clone
wait – notify
getClass
Clase Object
Colección de elementos del mismo tipo
<tipo> <nombre>[]
int precios[];
Inicialización:
<var> = new <tipo>[<num>]
precios = new int[80] //array de 80 precios
bicicletas = new Bicicletas[10];
Arrays
Clase Vector
En paquete java.util
Implementa un contenedor de
objetos
Es dinámico
Puedes obtener los objetos por
posición
Vectores
Vectores
Clase Iterator
En paquete java.util
Permite recorrer secuencialmente
el contenido de un vector
hasNext()
next()
Iteradores
Vectores
Java proporciona una clase
String
Los literales cadena: “Hola a todos”
Se pueden asignar cadenas a variables
directamente
String hola = “Hola mundo”;
Cadenas de caracteres
El operador '+' concatena cadenas
“hol” + “a Mundo”: “hola Mundo”
String a = “Hola”;
String b = “Mundo”;
String c = a + ' ' + b; // “Hola Mundo”
Algunos métodos de la clase String
length()
equals()
Cadenas de caracteres
El método toString()
Definido en Object
Da el nombre de la clase y la posición
de memoria del objeto
Se puede redefinir para que
devuelva lo que queramos
Cadenas de caracteres
ToString
Si los elementos del array son tipos
primitivos, se crean y se inicializan a 0
Si los elementos del array son tipos
referencia (Clases e Interfaces), sólo se
reserva espacio para los punteros
Deberemos crear los objetos uno a uno
para el array (con el operador new)
Arrays
Obtener el valor:
<nombre>[<posición>]
int a = precios[8]
Guardar valor:
<nombre>[<posición>] = valor
precios[6] = 50;
Arrays
<tipo> <nombre>[][]...
int precios[][];
Inicialización:
<var> = new
<tipo>[<num>][<num>]...
precios = new int[80][40] //array de
80x40
Arrays
multidimensionales
Obtener el valor:
<nombre>[<posición>][<posición>]
int a = precios[8][10]
Guardar valor:
<nombre>[<pos>][<pos>] = valor
precios[6][12] = 50;
Arrays
Los arrays no son dinámicos
Tienen tantos elementos como se indique al
crearlo y no pueden cambiar
Los arrays van desde 0 hasta tam – 1
Para saber el tamaño: array.length
Si te pasas de índice, excepción
ArrayIndexOutOfBoundsException
Arrays
arrays

Arrays
String[] ciudades = {
"Madrid", "Barcelona", "Bilbo", "Donosti",
"Gasteiz", "Iruña"
};
¿Cúal es el índice de Bilbo?
¿Cómo es la expresión para acceder a Bilbo?
¿Cuál es el resultado de ciudades.length?
¿Cuál es el índice del último elemento?
¿Cuál es el valor de la expresión ciudades[3]?
2
ciudades[2]
6
5
Donosti

Arrays
public class WhatHappens {
public static void main(String[] args) {
StringBuffer[] stringBuffers = new StringBuffer[10];
for (int i = 0; i < stringBuffers.length; i ++) {
stringBuffers[i].append("StringBuffer at index " + i);
}
}
}
Se crea espacio para el array, pero no se crean los objetos
StringBuffer del array, por lo que todos son nulos.

Excepciones
Polimorfismo
Abstracción
CONCEPTOS
AVANZADOS
Sirven para informar que se ha
producido una situación extraña y
que debe tratarse
Se rompe la ejecución y se salta a
un manejador de excepciones
Mejor que comprobar valores de
retorno
Excepciones
Programa Formulario de Datos
import java.awt.*;
import java.lang.*;
import javax.swing.*;
import java.awt.event.*;
class Interface1 extends JFrame
{
String [] SProvincias= {"San
Miguel","San francisco Gotera","La
Union","Usulutan"};
String [] Edades =new String [90];
//Etiquetas
JLabel Logo=new JLabel("TALLER DON ANGEL",JLabel.CENTER);
JLabel Nombrel=new JLabel("Nombre",JLabel.LEFT);
JLabel Direccionl=new JLabel("Direccion",JLabel.LEFT);
JLabel Apellidosl=new JLabel("Apellidos",JLabel.LEFT);
JLabel Edadl=new JLabel("Edad",JLabel.LEFT);
JLabel Provincial=new JLabel("Provincia",JLabel.LEFT);
JLabel Sexol=new JLabel("Sexo",JLabel.LEFT);
JLabel Preferenciasl=new JLabel("Preferencias",JLabel.LEFT);
JLabel Comentariosl=new JLabel("Comentarios",JLabel.LEFT);
JLabel Pedidosl=new JLabel("Pedididos",JLabel.LEFT);
JLabel SeparacionPref=new JLabel("",JLabel.LEFT);
//Botones
JButton Cancelar=new JButton("Cancelar");
JButton Enviar=new JButton("Enviar");
//Caja Validacin Redonda
JRadioButton Hombre=new
JRadioButton("Hombre");
JRadioButton Mujer=new JRadioButton("Mujer");
//Caja Validacin Cuadrada
JCheckBox Tunning=new JCheckBox("Tunning");
JCheckBox Recambios=new JCheckBox("Recambios");
JCheckBox Reparaciones=new JCheckBox("Reparaciones");
JCheckBox Puesta=new JCheckBox("Puesta a punto");
JCheckBox Mantenimiento=new
JCheckBox("Mantenimiento");
JCheckBox Competicion=new JCheckBox("Competicin");
JCheckBox Equipamiento=new JCheckBox("Equipamiento");
JCheckBox Ocasion=new JCheckBox("Vehiculos ocasin");
//Listas Desplegables
JComboBox Edad=new
JComboBox();
JComboBox Provincias=new
JComboBox(SProvincias);
//Areas de Texto
JTextArea Comentarios=new JTextArea(100,100);
JTextArea Pedidos=new JTextArea(100,100);
//Campos de Texto
JTextField Nombre = new JTextField();
JTextField Apellidos= new JTextField();
JTextField Direccion= new JTextField();
//Grupos de radio
ButtonGroup Sexo=new ButtonGroup();
Interface1()
{
add(Logo,"North");
//JPanel de Abajo
JPanel EnviarCancelar=new JPanel();
EnviarCancelar.add(Enviar);
EnviarCancelar.add(Cancelar);
add(EnviarCancelar,"South"); //Agregar JPanel al Sur
//JPanel Principal !
JPanel Pprincipal=new JPanel();
add(Pprincipal,"Center"); //Situacin del JPanel en el centro
Pprincipal.setLayout(new GridLayout(3,1));
//Creacin JPaneles Secundarios
JPanel Datos=new JPanel(); //Introducir
Elementos Primer JPanel
Datos.setLayout(new GridLayout(6,2));
//Divisin
Datos.add(Nombrel);
Datos.add(Nombre);
Datos.add(Apellidosl);
Datos.add(Apellidos);
Datos.add(Direccionl);
Datos.add(Direccion);
Datos.add(Provincial);
Datos.add(Provincias);
Datos.add(Edadl);

Más contenido relacionado

La actualidad más candente

Métodos constructores, método toString()
Métodos constructores, método toString()Métodos constructores, método toString()
Métodos constructores, método toString()Pablo Macon
 
Iniciando en java en www.fiec.espol.edu.ec
Iniciando en java  en www.fiec.espol.edu.ecIniciando en java  en www.fiec.espol.edu.ec
Iniciando en java en www.fiec.espol.edu.ecSilvana Vargas
 
Conceptos de programacion orientada a objetos
Conceptos de programacion orientada a objetosConceptos de programacion orientada a objetos
Conceptos de programacion orientada a objetosMarisol Henao
 
Clase3 asignaciones
Clase3 asignacionesClase3 asignaciones
Clase3 asignacionesjorg_marq
 
10 Curso de POO en java - métodos modificadores y analizadores
10 Curso de POO en java - métodos modificadores y analizadores10 Curso de POO en java - métodos modificadores y analizadores
10 Curso de POO en java - métodos modificadores y analizadoresClara Patricia Avella Ibañez
 
Fundamentos POO en JS. Mixins y Traits.
Fundamentos POO en JS. Mixins y Traits.Fundamentos POO en JS. Mixins y Traits.
Fundamentos POO en JS. Mixins y Traits.Maximiliano Fierro
 
Introducción a Swift
Introducción a SwiftIntroducción a Swift
Introducción a Swiftbetabeers
 
Librería String, Math de Java (NetBeans)
Librería String, Math de Java (NetBeans)Librería String, Math de Java (NetBeans)
Librería String, Math de Java (NetBeans)Daniel Gómez
 
8. Uso De Variables De Tipo Referencia
8.  Uso De Variables De Tipo Referencia8.  Uso De Variables De Tipo Referencia
8. Uso De Variables De Tipo ReferenciaEsteban Soraire
 

La actualidad más candente (20)

Métodos constructores, método toString()
Métodos constructores, método toString()Métodos constructores, método toString()
Métodos constructores, método toString()
 
Iniciando en java en www.fiec.espol.edu.ec
Iniciando en java  en www.fiec.espol.edu.ecIniciando en java  en www.fiec.espol.edu.ec
Iniciando en java en www.fiec.espol.edu.ec
 
4 Introducción al lenguaje Scala
4 Introducción al lenguaje Scala4 Introducción al lenguaje Scala
4 Introducción al lenguaje Scala
 
Conceptos de programacion orientada a objetos
Conceptos de programacion orientada a objetosConceptos de programacion orientada a objetos
Conceptos de programacion orientada a objetos
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
Clase3 asignaciones
Clase3 asignacionesClase3 asignaciones
Clase3 asignaciones
 
Java
JavaJava
Java
 
Ruby para Java Developers
Ruby para Java DevelopersRuby para Java Developers
Ruby para Java Developers
 
Introducción a scala
Introducción a scalaIntroducción a scala
Introducción a scala
 
Taller 1 3
Taller 1 3Taller 1 3
Taller 1 3
 
10 Curso de POO en java - métodos modificadores y analizadores
10 Curso de POO en java - métodos modificadores y analizadores10 Curso de POO en java - métodos modificadores y analizadores
10 Curso de POO en java - métodos modificadores y analizadores
 
Fundamentos POO en JS. Mixins y Traits.
Fundamentos POO en JS. Mixins y Traits.Fundamentos POO en JS. Mixins y Traits.
Fundamentos POO en JS. Mixins y Traits.
 
Compu
CompuCompu
Compu
 
Introducción a Swift
Introducción a SwiftIntroducción a Swift
Introducción a Swift
 
Unidad 3 CLASES, OBJETOS E INTSANCIAS
Unidad 3 CLASES, OBJETOS E INTSANCIASUnidad 3 CLASES, OBJETOS E INTSANCIAS
Unidad 3 CLASES, OBJETOS E INTSANCIAS
 
03 Oop
03   Oop03   Oop
03 Oop
 
Librería String, Math de Java (NetBeans)
Librería String, Math de Java (NetBeans)Librería String, Math de Java (NetBeans)
Librería String, Math de Java (NetBeans)
 
Unidad 2 Sintaxis en java
Unidad 2 Sintaxis en javaUnidad 2 Sintaxis en java
Unidad 2 Sintaxis en java
 
8. Uso De Variables De Tipo Referencia
8.  Uso De Variables De Tipo Referencia8.  Uso De Variables De Tipo Referencia
8. Uso De Variables De Tipo Referencia
 

Similar a Clase IX

Vectores y Objetos Programacion Orientada a Objetos
Vectores y Objetos Programacion Orientada a ObjetosVectores y Objetos Programacion Orientada a Objetos
Vectores y Objetos Programacion Orientada a ObjetosJanet Brigyth Camacho Medina
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosjent46
 
Semana03 prog ii
Semana03 prog iiSemana03 prog ii
Semana03 prog iiPropia
 
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en JavaProgramación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en JavaAngel Vázquez Patiño
 
Lenguaje de Programacion - Java
Lenguaje de Programacion - JavaLenguaje de Programacion - Java
Lenguaje de Programacion - Javazousbabastre
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfTareasEMI
 
Net1 oop vbnet
Net1 oop vbnetNet1 oop vbnet
Net1 oop vbnetjhordy2000
 
ejercicios de programacion java orienta a objetos
ejercicios de programacion java orienta a objetosejercicios de programacion java orienta a objetos
ejercicios de programacion java orienta a objetosMiguelAmc
 
Framework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetosFramework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetosAntonio Palomares Sender
 
Clase6 collections
Clase6 collectionsClase6 collections
Clase6 collectionsjorg_marq
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosale8819
 

Similar a Clase IX (20)

Trabajo de consulta
Trabajo de consultaTrabajo de consulta
Trabajo de consulta
 
Vectores y Objetos Programacion Orientada a Objetos
Vectores y Objetos Programacion Orientada a ObjetosVectores y Objetos Programacion Orientada a Objetos
Vectores y Objetos Programacion Orientada a Objetos
 
Introducción a Scala
Introducción a ScalaIntroducción a Scala
Introducción a Scala
 
S6-Contenedores
S6-ContenedoresS6-Contenedores
S6-Contenedores
 
Java
JavaJava
Java
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
S6-POO-3.2 Contenedores Especiales
S6-POO-3.2 Contenedores EspecialesS6-POO-3.2 Contenedores Especiales
S6-POO-3.2 Contenedores Especiales
 
Semana03 prog ii
Semana03 prog iiSemana03 prog ii
Semana03 prog ii
 
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en JavaProgramación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
 
Lenguaje de Programacion - Java
Lenguaje de Programacion - JavaLenguaje de Programacion - Java
Lenguaje de Programacion - Java
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdf
 
Net1 oop vbnet
Net1 oop vbnetNet1 oop vbnet
Net1 oop vbnet
 
ejercicios de programacion java orienta a objetos
ejercicios de programacion java orienta a objetosejercicios de programacion java orienta a objetos
ejercicios de programacion java orienta a objetos
 
Clase 7 objetos globales de javaScript
Clase 7 objetos globales de javaScriptClase 7 objetos globales de javaScript
Clase 7 objetos globales de javaScript
 
Framework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetosFramework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetos
 
Clase6 collections
Clase6 collectionsClase6 collections
Clase6 collections
 
Poo
PooPoo
Poo
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
LibreríAs De Java
LibreríAs De JavaLibreríAs De Java
LibreríAs De Java
 

Más de José Angel Quintanilla Rosales (20)

Presentación de Moviles
Presentación de MovilesPresentación de Moviles
Presentación de Moviles
 
Clase iv
Clase ivClase iv
Clase iv
 
Clase III
Clase IIIClase III
Clase III
 
Clase ii
Clase iiClase ii
Clase ii
 
Clase I
Clase IClase I
Clase I
 
Clase xiv
Clase xivClase xiv
Clase xiv
 
Clase xiii
Clase xiiiClase xiii
Clase xiii
 
Clase xii
Clase xiiClase xii
Clase xii
 
Clase xi
Clase xiClase xi
Clase xi
 
Clase x
Clase xClase x
Clase x
 
Clase viii
Clase viiiClase viii
Clase viii
 
Clase vii
Clase viiClase vii
Clase vii
 
Clase vi
Clase viClase vi
Clase vi
 
Clase v
Clase vClase v
Clase v
 
Clase iv
Clase ivClase iv
Clase iv
 
Clase 3
Clase 3Clase 3
Clase 3
 
Clase ii
Clase iiClase ii
Clase ii
 
Programación de sistemas
Programación de sistemasProgramación de sistemas
Programación de sistemas
 
Excel iii
Excel iiiExcel iii
Excel iii
 
Excel ii
Excel iiExcel ii
Excel ii
 

Clase IX

  • 1. Lic. José Angel Quintanilla Rosales Un programa bien escrito es su propio cielo; un programa mal escrito es su propio infierno. [Geoffrey James, El Tao de la Programación]
  • 2.  Limpieza de objetos ¿Cuántas referencias hay a los objetos? ... Point point = new Point(2,4); Rectangle rectangle = new Rectangle(point, 20, 20); point = null; ... rectangle point Poin t Rectangle X Rectangle Poin t
  • 3.  Método public void finalize() Declarado en Object y heredado por todas las clases Cuerpo: liberar recursos No se garantiza Ni en el momento en que se ejecuta Ni que se ejecute Destructores Bicicleta
  • 4.  Tanto los atributos como los métodos tienen un calificador de acceso Public Pueden acceder todos los objetos Private Sólo puede acceder el código de la misma clase Seguridad en acceso
  • 5. Protected Sólo puede acceder el código de la misma clase, de subclases o de clases en el mismo paquete Package protected Sólo puede acceder el código de la misma clase o de clases en el mismo paquete Seguridad en acceso accesores
  • 6. Cambiar el tipo de un objeto No es necesario cuando es “hacia arriba” Obligatorio cuando es “hacia abajo” Se comprueba en tiempo de ejecución Casting
  • 7.  Casting Bicicleta a = new Bicicleta(); Tandem b = new Tandem(); a = b; // No es necesario, porque un tándem es una bicicleta b = (Tandem) a; // Es necesario porque a es una bicicleta, pero // el compilador no sabe que hay un tandem. // Sólo se sabe en tiempo de ejecución. Así // que le damos la pista al compilador. Si en // tiempo de ejecución no hay un Tándem en a, // habrá un error de tipos en tiempo de ejecución
  • 8. instanceof: nos informa si una variable es instancia de determinada clase a instanceof Clase Tiene en cuenta la transitividad Interesante para evitar errores de conversión (casting) instanceof
  • 9. Comparar objetos Mismo objeto (=) Mismo contenido (equals) Código hash (hashCode) Métodos definidos en Object y redefinibles en subclases = > equals > hashCode Operadores de comparación
  • 11. Colección de elementos del mismo tipo <tipo> <nombre>[] int precios[]; Inicialización: <var> = new <tipo>[<num>] precios = new int[80] //array de 80 precios bicicletas = new Bicicletas[10]; Arrays
  • 12. Clase Vector En paquete java.util Implementa un contenedor de objetos Es dinámico Puedes obtener los objetos por posición Vectores Vectores
  • 13. Clase Iterator En paquete java.util Permite recorrer secuencialmente el contenido de un vector hasNext() next() Iteradores Vectores
  • 14. Java proporciona una clase String Los literales cadena: “Hola a todos” Se pueden asignar cadenas a variables directamente String hola = “Hola mundo”; Cadenas de caracteres
  • 15. El operador '+' concatena cadenas “hol” + “a Mundo”: “hola Mundo” String a = “Hola”; String b = “Mundo”; String c = a + ' ' + b; // “Hola Mundo” Algunos métodos de la clase String length() equals() Cadenas de caracteres
  • 16. El método toString() Definido en Object Da el nombre de la clase y la posición de memoria del objeto Se puede redefinir para que devuelva lo que queramos Cadenas de caracteres ToString
  • 17. Si los elementos del array son tipos primitivos, se crean y se inicializan a 0 Si los elementos del array son tipos referencia (Clases e Interfaces), sólo se reserva espacio para los punteros Deberemos crear los objetos uno a uno para el array (con el operador new) Arrays
  • 18. Obtener el valor: <nombre>[<posición>] int a = precios[8] Guardar valor: <nombre>[<posición>] = valor precios[6] = 50; Arrays
  • 19. <tipo> <nombre>[][]... int precios[][]; Inicialización: <var> = new <tipo>[<num>][<num>]... precios = new int[80][40] //array de 80x40 Arrays multidimensionales
  • 20. Obtener el valor: <nombre>[<posición>][<posición>] int a = precios[8][10] Guardar valor: <nombre>[<pos>][<pos>] = valor precios[6][12] = 50; Arrays
  • 21. Los arrays no son dinámicos Tienen tantos elementos como se indique al crearlo y no pueden cambiar Los arrays van desde 0 hasta tam – 1 Para saber el tamaño: array.length Si te pasas de índice, excepción ArrayIndexOutOfBoundsException Arrays arrays
  • 22.  Arrays String[] ciudades = { "Madrid", "Barcelona", "Bilbo", "Donosti", "Gasteiz", "Iruña" }; ¿Cúal es el índice de Bilbo? ¿Cómo es la expresión para acceder a Bilbo? ¿Cuál es el resultado de ciudades.length? ¿Cuál es el índice del último elemento? ¿Cuál es el valor de la expresión ciudades[3]? 2 ciudades[2] 6 5 Donosti
  • 23.  Arrays public class WhatHappens { public static void main(String[] args) { StringBuffer[] stringBuffers = new StringBuffer[10]; for (int i = 0; i < stringBuffers.length; i ++) { stringBuffers[i].append("StringBuffer at index " + i); } } } Se crea espacio para el array, pero no se crean los objetos StringBuffer del array, por lo que todos son nulos.
  • 25. Sirven para informar que se ha producido una situación extraña y que debe tratarse Se rompe la ejecución y se salta a un manejador de excepciones Mejor que comprobar valores de retorno Excepciones
  • 26. Programa Formulario de Datos import java.awt.*; import java.lang.*; import javax.swing.*; import java.awt.event.*; class Interface1 extends JFrame { String [] SProvincias= {"San Miguel","San francisco Gotera","La Union","Usulutan"}; String [] Edades =new String [90];
  • 27. //Etiquetas JLabel Logo=new JLabel("TALLER DON ANGEL",JLabel.CENTER); JLabel Nombrel=new JLabel("Nombre",JLabel.LEFT); JLabel Direccionl=new JLabel("Direccion",JLabel.LEFT); JLabel Apellidosl=new JLabel("Apellidos",JLabel.LEFT); JLabel Edadl=new JLabel("Edad",JLabel.LEFT); JLabel Provincial=new JLabel("Provincia",JLabel.LEFT); JLabel Sexol=new JLabel("Sexo",JLabel.LEFT); JLabel Preferenciasl=new JLabel("Preferencias",JLabel.LEFT); JLabel Comentariosl=new JLabel("Comentarios",JLabel.LEFT); JLabel Pedidosl=new JLabel("Pedididos",JLabel.LEFT); JLabel SeparacionPref=new JLabel("",JLabel.LEFT);
  • 28. //Botones JButton Cancelar=new JButton("Cancelar"); JButton Enviar=new JButton("Enviar"); //Caja Validacin Redonda JRadioButton Hombre=new JRadioButton("Hombre"); JRadioButton Mujer=new JRadioButton("Mujer"); //Caja Validacin Cuadrada JCheckBox Tunning=new JCheckBox("Tunning"); JCheckBox Recambios=new JCheckBox("Recambios"); JCheckBox Reparaciones=new JCheckBox("Reparaciones"); JCheckBox Puesta=new JCheckBox("Puesta a punto"); JCheckBox Mantenimiento=new JCheckBox("Mantenimiento"); JCheckBox Competicion=new JCheckBox("Competicin"); JCheckBox Equipamiento=new JCheckBox("Equipamiento"); JCheckBox Ocasion=new JCheckBox("Vehiculos ocasin");
  • 29. //Listas Desplegables JComboBox Edad=new JComboBox(); JComboBox Provincias=new JComboBox(SProvincias); //Areas de Texto JTextArea Comentarios=new JTextArea(100,100); JTextArea Pedidos=new JTextArea(100,100); //Campos de Texto JTextField Nombre = new JTextField(); JTextField Apellidos= new JTextField(); JTextField Direccion= new JTextField(); //Grupos de radio ButtonGroup Sexo=new ButtonGroup();
  • 30. Interface1() { add(Logo,"North"); //JPanel de Abajo JPanel EnviarCancelar=new JPanel(); EnviarCancelar.add(Enviar); EnviarCancelar.add(Cancelar); add(EnviarCancelar,"South"); //Agregar JPanel al Sur //JPanel Principal ! JPanel Pprincipal=new JPanel(); add(Pprincipal,"Center"); //Situacin del JPanel en el centro Pprincipal.setLayout(new GridLayout(3,1));
  • 31. //Creacin JPaneles Secundarios JPanel Datos=new JPanel(); //Introducir Elementos Primer JPanel Datos.setLayout(new GridLayout(6,2)); //Divisin Datos.add(Nombrel); Datos.add(Nombre); Datos.add(Apellidosl); Datos.add(Apellidos); Datos.add(Direccionl); Datos.add(Direccion); Datos.add(Provincial); Datos.add(Provincias); Datos.add(Edadl);