¿Qué es el formato de archivo JAVA?
Un archivo .java es un archivo de código fuente en texto plano escrito en el lenguaje de programación Java. Java es un lenguaje de programación orientado a objetos construido en torno a los conceptos de clases y objetos. Los archivos fuente .java son compilados por el compilador javac en archivos de código de bytes (bytecode) .class; para ejecutar el programa resultante, se requiere una Java Virtual Machine (JVM). Java es también el lenguaje principal utilizado para desarrollar aplicaciones Android.
Programación orientada a objetos
Java recibió una gran influencia de C++, aunque fue diseñado desde cero como un lenguaje independiente de la plataforma. Los diseñadores originales aceptaron algunas concesiones en la velocidad de ejecución bruta para lograr la portabilidad de «escribir una vez, ejecutar en cualquier lugar»; la compilación JIT (just-in-time) moderna ha cerrado desde entonces gran parte de esa brecha. Los archivos .java se construyen casi en su totalidad a partir de declaraciones de clases, interfaces, enums y records, con solo un pequeño conjunto de tipos primitivos (como int, boolean y double) que quedan fuera del modelo de objetos. Por convención, cada archivo .java contiene exactamente un tipo público, y el nombre del archivo debe coincidir con el nombre de ese tipo; por ejemplo, App.java debe contener public class App.
Para simplificar, una clase es una generalización -una plantilla- de un objeto:
- *Clase:* humano - *objeto:* Smith John
- *Clase:* avión - *objeto:* Boeing 737
Cada clase define las propiedades que un objeto puede tener (por ejemplo, un coche puede tener propiedades como color, número de asientos, etc.) y los métodos que puede ejecutar -es decir, las operaciones o acciones que puede realizar (por ejemplo, un objeto coche puede acelerar, frenar y tocar la bocina). Las clases pueden heredar de otras clases o componer otras clases, lo que permite la reutilización de código y el diseño modular.
Compilar un archivo .java con javac produce un archivo .class; varios archivos .class se empaquetan comúnmente en un archivo JAR para su distribución. Desde Java 11, un programa .java de un solo archivo también puede lanzarse directamente con el comando java sin un paso de compilación explícito.
Seguridad y protección
RIESGO: LOWUn archivo .java es texto fuente pasivo: abrirlo o leerlo no puede dañar su ordenador. El riesgo aparece solo si lo COMPILA y EJECUTA: como cualquier programa que construya a partir del código de otra persona, se ejecuta con sus permisos y podría hacer cualquier cosa que el código indique, así que revise o confíe en la fuente antes de ejecutar «javac»/«java». No hay ejecución automática por el mero hecho de ver el archivo en un editor.
Detalles del formato
en pocas palabrasProgramas que abren archivos JAVA
Detalles técnicos
especificación profunda| Tipo MIME | text/x-java-source (también aceptado como text/x-java) |
| Codificación de texto | UTF-8; el estándar para javac desde Java 18 (2022); las cadenas de herramientas más antiguas requieren un indicador -encoding explícito |
| Firma de archivo | Ninguna: texto plano sin bytes mágicos; típicamente comienza con una declaración de paquete, sentencias de importación o una definición de clase |
| Salida de compilación | javac compila cada archivo .java en uno o más archivos de bytecode .class, uno por cada tipo definido en el fuente |
| Un tipo público por archivo | El nombre de un tipo público debe coincidir exactamente con el nombre del archivo; por ejemplo, App.java debe declarar public class App; violar esto es un error de compilación |
| Orden de la estructura del archivo | Declaración de paquete opcional → sentencias de importación → declaraciones de clase, interfaz, enum o record que contienen campos y métodos |
| Tamaño de archivo típico | 1 KB - 100 KB; una pequeña clase de utilidad puede tener menos de 1 KB, una clase grande rara vez supera los 100 KB |
| Soporte de plataforma | Multiplataforma: Windows, macOS, Linux y cualquier SO con un JDK instalado; el mismo código fuente se compila en todas las plataformas |
| Mecanismo de versión del lenguaje | El nivel de sintaxis no se almacena dentro del archivo; se controla en el momento de la compilación mediante javac --release N (por ejemplo, --release 21) |
| Tipos primitivos | Existen ocho primitivos integrados -int, long, double, float, boolean, char, byte, short- junto con los tipos de objeto |
| Adiciones de sintaxis moderna | Records (Java 16), clases selladas (Java 17), coincidencia de patrones para switch (Java 21), patrones y variables anónimas (Java 22) |
| Lanzamiento directo (Java 11+) | Un archivo .java de fuente única puede ejecutarse con java FileName.java sin un paso previo de compilación con javac |
| Empaquetado de despliegue | Varios archivos .class compilados se agrupan en un archivo .jar para su distribución y ejecución en cualquier JVM |
| Administración del lenguaje | Especificación del lenguaje Java mantenida por Oracle; implementación de código abierto a través de OpenJDK bajo el Java Community Process (JCP) |
| Herramientas de desarrollo comunes | IntelliJ IDEA, Eclipse IDE y Visual Studio Code (con el Java Extension Pack) proporcionan herramientas de lenguaje completas para archivos .java |
| Lanzado | 1995 (Java 1.0, Sun Microsystems) |
| Última versión | Tracks the Java language version; Java 24 (2025) is current at time of writing |
| Estándar abierto | Sí · libre de regalías |
| Especificación | docs.oracle.com |
Conversiones de JAVA
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos JAVA.