Problema con llamada de funciones (SOLUCIONADO)

Iniciado por dato000, 14 Febrero 2011, 19:24 PM

0 Miembros y 1 Visitante están viendo este tema.

dato000

Buenas, la verdad es que soy muy pero muy basico con esto, no se como hacerle, he tratado de correrlo, pero no se como solucionarlo.

debo hacer una llamada a unas funciones para cargar y leer unos string.

Pero en el momento de llamar las funciones me sale que debo crear unas clases, no se como debo instanciar esto, me sale todo mal, por favor necesito unos consejos.

package unilibre;

import javax.swing.*;
import java.io.*;
import java.util.Date;
/**
*
* Manuel Camilo Cepeda Martinez 066091006
*/

public class UArchivos {

String nombrearchivo="camilo cepeda 066091006";
String ruta_1="cualquier sitio";
String contenido_1="teorico";

leerArchivo nuevo= new leerArchivo(nombrearchivo, ruta_1);

       public void leerArchivo(String nombreArchivo, String ruta) {
           nombreArchivo = nombrearchivo;
           ruta = ruta_1;
           System.out.println(nombreArchivo);
           System.out.println(ruta);
       }

       /*public void crearArchivo(String nombreArchivo, String ruta, String contenido) {
           try
               {
                        File archivo = new File(JOptionPane.showInputDialog("Nombre del archivo"));
                        fos=new FileOutputStream(archivo,true);
                        dos=new DataOutputStream(fos);
                        do
                            dos.writeInt(leerArchivo("practica1", "practica2"));
                        while(JOptionPane.showConfirmDialog(null,"Continuar")==0);
               }
               catch(IOException e)
               {
                   JOptionPane.showMessageDialog(null,"error");
               }
               try
               {
                   if(fos!=null)
                       fos.close();
               }
               catch(IOException e)
               {
                   JOptionPane.showMessageDialog(null,"Error al cerrar archivo");
               }
       }*/



       public static void main(String[] args) {
           new UArchivos();
           
        //void funcioncrear= new  crearArchivo("Ensayo", "UNILIBRE D:", "Contenido caracter");
           //leerArchivo("Ensayo", "UNILIBRE D:");      
       }
}








Gallu

Primero que nada has de crear la clase bien para poder instanciarla , fíjate en lo siguiente
Código (java) [Seleccionar]

import javax.swing.*;
import java.io.*;
import java.util.Date;
/**
*
* Manuel Camilo Cepeda Martinez 066091006
*/

public class UArchivos {

private String nombreArchivo;  //mejor privadas por temas de encapsulamiento
private String ruta;


        public void leerArchivo(String nombreArchivo, String ruta) {
            this.nombreArchivo = nombreArchivo; //usa la referencia this para referirte a las variables de instancia
            this.ruta = ruta;
            System.out.println(nombreArchivo);
            System.out.println(ruta);
        }       
       



        public static void main(String[] args) { 

UArchivos nuevo= new UArchivos();  //instancias/creas un objeto de la clase
nuevo.leerArchivo("camilo cepeda 066091006", "cualquier sitio");   //llamas al método utilizando la instancia
       
        }
}



Nadie alcanza la meta con un solo intento, ni perfecciona la vida con una sola rectificación, ni alcanza altura con un solo vuelo.

dato000

gracias gracias gracias, mil gracias, aun no entiendo bien lo del this y lo de las instancias, pero gracias!!



Gallu

Una clase es un "plantilla" desde donde creas (instancias) los objetos , instanciar un objeto es crearlo en memoria , lo haces cuando utilizas la palabra reservada new , this es una referencia que apunta siempre al objeto en que se está usando , cuando haces this.nombreArchivo , estás diciéndole a la JVM " utiliza la variable de instancia nombreArchivo de ESTE objeto.
Nadie alcanza la meta con un solo intento, ni perfecciona la vida con una sola rectificación, ni alcanza altura con un solo vuelo.

dato000

#4
 
public void leerArchivo(String nombreArchivo, String ruta) {            

     this.nombreArchivo = nombreArchivo;
     //usa la referencia this para referirte a las variables de instancia            
     this.ruta = ruta;          
     System.out.println(nombreArchivo);            
     System.out.println(ruta);        

}


THIS se refiere a la variable??

public void leerArchivo(String nombreArchivo, String ruta) {