TALLER DE PROGRAMACION I Tema: Arreglos Objetos
Arreglos de Objetos Cuando se crea un array de objetos, se está creando realmente un array de referencias a los objetos, y cada una de éstas se inicializa automáticamente con un valor especial representado por la palabra clave  null.
Ejemplo (1 de 4) Ejemplo Paso 1:  Definir tipo de dato (clase) public class Punto() { private int x,y; public Punto() {x=0; y=0;} public Punto(int a, int b) {x=a; y=b;} public int getX() {return x;} public int getY() {return y;} public setX(int x) {this.x=a;} public setY(int y) {this.y=b;} } Apuntes : Los métodos  getter  (Permiten recuperar los atributos del objeto) y  setter  (Permiten modificar los atributos del objeto). En NetBeans estos metodos se pueder crear auntimaticamente. La declaración de una clase, permite definir un nuevo tipo de dato que se utilizara posteriormente.
Ejemplo (2 de 4) Paso 2:  Definir clase Arreglo public class ArregloPunto {  Punto p[];  //Definir arreglo de la clase punto int pos=0; public ArregloPunto() { pos=0; } public ArregloPunto(int n) //Inicializar Arreglo  {  pos=0; p=new Punto[n];  } public void agregar(Punto nuevo) //Agregar un nuevo elemento  { p[pos]=nuevo; pos++; } public Punto mostrar(int n) // Mostrar datos de Punto  { return p[n];  } public int total() //Mostrar cantidad de elementos { return p.length;  } }
Ejemplo (3 de 4) Paso 3:  Utilizar la clase arreglo import java.io.*; public class app { public static void main(String[] args) { ArregloPunto p;  //Objeto de la clase arreglo Punto aux;  //Objeto de la clase punto BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int a=0,b=0,n=0; try{ do{   System.out.println(&quot;Cantidad de Elementos&quot;);  n=Integer.parseInt(br.readLine()); }while(n<0); p= new  ArregloPunto(n);  //Invocar Constructor de la clase ArregloPunto  for(int i=0;i<p.total();i++)  { System.out.println(&quot;Punto[&quot;+(i+1)+&quot;]&quot;); System.out.println(&quot;Ingrese X :&quot;); a = Integer.parseInt(br.readLine()); System.out.println(&quot;Ingrese Y :&quot;); b = Integer.parseInt(br.readLine()); aux =  new Punto(a,b);// Invocar constructor de la clase punto. p.agregar(aux); }
Ejemplo (4 de 4) Paso 3:  Continuación //-- Reportar System.out.println(&quot;Punto\tX\tY&quot;);  for(int i=0;i<p.total();i++) { aux=p.mostrar(i);  System.out.println((i+1) +&quot;\t&quot;+aux.getX() +&quot;\t&quot;+aux.getY());  } } catch(Exception e) { System.out.println(e); } }  }
Conclusiones Cuando el tipo de dato de un arreglo es una clase, estamos hablando de arreglo de objetos. Tambien podemos crear arreglos de objetos usando las clases graficas, como JButton. Esta clase esta contenida en el paquete javax.swing. JButton boton[] =  new JButton[10];

Taller 1 6

  • 1.
    TALLER DE PROGRAMACIONI Tema: Arreglos Objetos
  • 2.
    Arreglos de ObjetosCuando se crea un array de objetos, se está creando realmente un array de referencias a los objetos, y cada una de éstas se inicializa automáticamente con un valor especial representado por la palabra clave null.
  • 3.
    Ejemplo (1 de4) Ejemplo Paso 1: Definir tipo de dato (clase) public class Punto() { private int x,y; public Punto() {x=0; y=0;} public Punto(int a, int b) {x=a; y=b;} public int getX() {return x;} public int getY() {return y;} public setX(int x) {this.x=a;} public setY(int y) {this.y=b;} } Apuntes : Los métodos getter (Permiten recuperar los atributos del objeto) y setter (Permiten modificar los atributos del objeto). En NetBeans estos metodos se pueder crear auntimaticamente. La declaración de una clase, permite definir un nuevo tipo de dato que se utilizara posteriormente.
  • 4.
    Ejemplo (2 de4) Paso 2: Definir clase Arreglo public class ArregloPunto { Punto p[]; //Definir arreglo de la clase punto int pos=0; public ArregloPunto() { pos=0; } public ArregloPunto(int n) //Inicializar Arreglo { pos=0; p=new Punto[n]; } public void agregar(Punto nuevo) //Agregar un nuevo elemento { p[pos]=nuevo; pos++; } public Punto mostrar(int n) // Mostrar datos de Punto { return p[n]; } public int total() //Mostrar cantidad de elementos { return p.length; } }
  • 5.
    Ejemplo (3 de4) Paso 3: Utilizar la clase arreglo import java.io.*; public class app { public static void main(String[] args) { ArregloPunto p; //Objeto de la clase arreglo Punto aux; //Objeto de la clase punto BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int a=0,b=0,n=0; try{ do{ System.out.println(&quot;Cantidad de Elementos&quot;); n=Integer.parseInt(br.readLine()); }while(n<0); p= new ArregloPunto(n); //Invocar Constructor de la clase ArregloPunto for(int i=0;i<p.total();i++) { System.out.println(&quot;Punto[&quot;+(i+1)+&quot;]&quot;); System.out.println(&quot;Ingrese X :&quot;); a = Integer.parseInt(br.readLine()); System.out.println(&quot;Ingrese Y :&quot;); b = Integer.parseInt(br.readLine()); aux = new Punto(a,b);// Invocar constructor de la clase punto. p.agregar(aux); }
  • 6.
    Ejemplo (4 de4) Paso 3: Continuación //-- Reportar System.out.println(&quot;Punto\tX\tY&quot;); for(int i=0;i<p.total();i++) { aux=p.mostrar(i); System.out.println((i+1) +&quot;\t&quot;+aux.getX() +&quot;\t&quot;+aux.getY()); } } catch(Exception e) { System.out.println(e); } } }
  • 7.
    Conclusiones Cuando eltipo de dato de un arreglo es una clase, estamos hablando de arreglo de objetos. Tambien podemos crear arreglos de objetos usando las clases graficas, como JButton. Esta clase esta contenida en el paquete javax.swing. JButton boton[] = new JButton[10];