2009-12-31 21 views
6

Soy nuevo en Java y me pregunto cómo importar archivos de clase en netbeans y usarlo.Java - ¿Cómo utilizo un archivo de clase?

Entiendo que un archivo de clase es un código de bytes legible por máquina, pero no me importa lo que está pasando debajo del capó. Me gustaría importarlo a mi proyecto actual y hacer que lo reconozca para que pueda usar la clase.

Además, el archivo de clase está incrustado en un archivo JAR. Importé el archivo JAR en la carpeta/pestañas de mi biblioteca en la ventana de proyectos, pero no sé cómo lograr que mi proyecto reconozca la clase. Dice "no se puede encontrar el símbolo" cada vez que intento crear una instancia de un objeto.

+0

Guárdelo dentro del tarro. También conviértase a .Net mientras su reputación sigue siendo positiva;) –

+0

¿Quién puede decir que .NET será mejor? – duffymo

+0

@lpthnc (445) - Usar .Net no ha ayudado mucho a tu reputación :-) –

Respuesta

10

Tiene que importar llamando al nombre del paquete fuente. es decir, import hello.Car;. En su caso, está intentando llamar a Importar en el nombre de la carpeta JAR, lo que lleva a un error "no se puede encontrar el símbolo".

Voy a tratar de dar un ejemplo para una mejor comprensibilidad

2

En Netbeans (versión 5.5.1), puede agregar un archivo jar a un proyecto haciendo clic derecho en el nombre del proyecto y eligiendo Propiedades, luego Bibliotecas (de Categorías), y hay un "Agregar JAR/Carpeta" botón, que se puede usar para agregarlo a la ruta de clases en tiempo de compilación y/o en tiempo de ejecución. Agregarlo a las bibliotecas en tiempo de compilación es suficiente, ya que se agregará automáticamente al tiempo de ejecución a través de su entrada "Classpath for Compiling Sources" .

1

O bien debe especificar el nombre completo de la ruta del paquete para la clase. por ejemplo

com.foobar.acme.Clobula myBigClobula = new com.foobar.acme.Clobula(); 

o utilizar una sentencia import

import com.foobar.acme.Clobula 
... 
. 
Clobula myBigClobula = new Clobula(); 
1

Además, los archivos de clase no son legibles por máquina/binario en el sentido de que son archivos compilados c. Abra un archivo de clase con su editor de texto y verá que, de hecho, es una lista de instrucciones de texto. La Máquina Virtual Java mira estos archivos de clase y los interpreta, ejecutando las instrucciones resultantes.

+0

Creo que Alex quiere decir archivos ".class", que son los archivos que carga la JVM. Estos archivos son binarios, no son archivos de código de máquina como archivos C, pero son ** no ** archivos de texto. ".java" son archivos de texto que se compilan en bytecode para producir el archivo ".class". La definición del archivo de clase: http://java.sun.com/docs/books/jvms/second_edition/html/ClassFile.doc.html –

+0

Los archivos .java son el código fuente. .classfiles son muy legibles. Abra uno en un editor de texto. –

+0

No sé a qué te refieres como legible, pero cualquier archivo de clase que abrí (los últimos 10 años) NO es un archivo de texto. Leer la definición del archivo de clase simplemente confirma que: comienzan con el código mágico (0xCA 0xFE 0xBA 0xBE), seguido por 3 enteros de 2 bytes para menor, mayor y conteo de grupo constante. Por favor envíeme un examen de un archivo de clase (válido) que sea "legible". Esto es lo que veo al abrir uno en un editor de texto: http://img254.imageshack.us/img254/6135/helloi.jpg y aquí el archivo de clase: http://simu.wikidot.com/local--files/java : java/Hello.class –

Cuestiones relacionadas