Vad är filformatet JAVA?
En .java-fil är en källkodsfil i klartext skriven i programmeringsspråket Java. Java är ett objektorienterat programmeringsspråk uppbyggt kring koncepten klasser och objekt. .java-källkodsfiler kompileras av kompilatorn javac till .class-bytekodfiler; för att köra det resulterande programmet krävs en Java Virtual Machine (JVM). Java är också det primära språket som används för att utveckla Android-applikationer.
Objektorienterad programmering
Java påverkades kraftigt av C++, även om det designades från grunden som ett plattformsoberoende språk. De ursprungliga konstruktörerna accepterade vissa kompromisser i rå exekveringshastighet för att uppnå „write once, run anywhere”-portabilitet; modern JIT-kompilering (just-in-time) har sedan dess överbryggat mycket av det gapet. .java-filer är nästan helt uppbyggda av klass-, gränssnitts-, enum- och record-deklarationer, med endast en liten uppsättning primitiva typer (som int, boolean och double) som faller utanför objektmodellen. Enligt konvention innehåller varje .java-fil exakt en publik typ, och filnamnet måste matcha den typens namn - till exempel måste App.java innehålla public class App.
För enkelhetens skull är en klass en generalisering - en mall - av ett objekt:
- *Klass:* människa - *objekt:* Smith John
- *Klass:* flygplan - *objekt:* Boeing 737
Varje klass definierar de egenskaper ett objekt kan ha (till exempel kan en bil ha egenskaper som färg, antal säten, etc.) och de metoder det kan utföra - det vill säga de operationer eller handlingar det kan utföra (till exempel kan ett bilobjekt accelerera, bromsa och tuta). Klasser kan ärva från andra klasser eller komponera andra klasser, vilket möjliggör återanvändning av kod och modulär design.
Kompilering av en .java-fil med javac skapar en .class-fil; flera .class-filer paketeras vanligtvis i ett JAR-arkiv för distribution. Sedan Java 11 kan ett .java-program som består av en enda fil också startas direkt med kommandot java utan ett explicit kompileringssteg.
Säkerhet & trygghet
RISK: LOWEn .java-fil är passiv källkodstext - att öppna eller läsa den kan inte skada din dator. Risken uppstår endast om du KOMPILERAR och KÖR den: precis som alla program du bygger från någon annans kod, körs den då med dina behörigheter och kan göra vad koden än säger, så granska eller lita på källan innan du kör „javac”/„java”. Det sker ingen automatisk exekvering genom att bara visa filen i en redigerare.
Formatdetaljer
i ett nötskalProgram som öppnar JAVA-filer
Tekniska detaljer
djup specifikation| MIME-typ | text/x-java-source (accepteras även som text/x-java) |
| Textkodning | UTF-8; standard för javac sedan Java 18 (2022); äldre verktygskedjor kräver en explicit -encoding-flagga |
| Filsignatur | Ingen - klartext utan magic bytes; öppnas vanligtvis med en package-deklaration, import-satser eller en klassdefinition |
| Kompileringsresultat | javac kompilerar varje .java-fil till en eller flera .class-bytekodfiler, en per typ definierad i källkoden |
| En publik typ per fil | Namnet på en publik typ måste matcha filnamnet exakt - t.ex. måste App.java deklarera public class App; att bryta mot detta är ett kompileringsfel |
| Filstrukturens ordning | Valfri package-deklaration → import-satser → klass-, gränssnitts-, enum- eller record-deklarationer innehållande fält och metoder |
| Typisk filstorlek | 1 KB - 100 KB; en liten verktygsklass kan vara under 1 KB, en stor klass överstiger sällan 100 KB |
| Plattformsstöd | Korsplattform: Windows, macOS, Linux och alla operativsystem med ett JDK installerat; samma källkod kompileras på alla plattformar |
| Mekanism för språkversion | Syntaxnivån lagras inte inuti själva filen; den styrs vid kompilering via javac --release N (t.ex. --release 21) |
| Primitiva typer | Åtta inbyggda primitiver - int, long, double, float, boolean, char, byte, short - existerar vid sidan av objekttyper |
| Moderna syntaxtillägg | Records (Java 16), sealed classes (Java 17), pattern matching för switch (Java 21), namnlösa mönster och variabler (Java 22) |
| Direktstart (Java 11+) | En .java-fil med en enda källkod kan köras med java FileName.java utan ett föregående javac-kompileringssteg |
| Distributionspaketering | Flera kompilerade .class-filer buntas ihop i ett .jar-arkiv för distribution och exekvering på valfri JVM |
| Språkförvaltning | Java-specifikationen underhålls av Oracle; öppen källkods-implementering via OpenJDK under Java Community Process (JCP) |
| Vanliga utvecklingsverktyg | IntelliJ IDEA, Eclipse IDE och Visual Studio Code (med Java Extension Pack) erbjuder fullständiga språkverktyg för .java-filer |
| Släppt | 1995 (Java 1.0, Sun Microsystems) |
| Senaste version | Tracks the Java language version; Java 24 (2025) is current at time of writing |
| Öppen standard | Ja · royaltyfri |
| Specifikation | docs.oracle.com |
JAVA-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om JAVA-filer.
Vanliga frågor
Hur öppnar jag en .java-fil?
Hur kör jag en .java-fil?
Vad är skillnaden mellan .java, .class och .jar?
.java är den mänskligt skrivna källkoden; kompilering med javac skapar .class-bytekod; många .class-filer buntas ihop i en .jar för att distribuera ett helt program. Du redigerar .java, JVM kör .class, och du levererar .jar.Behöver jag hela JDK eller bara Java för att öppna en .java-fil?
javac); den vanliga „java.com”-körtidsmiljön kör endast kompilerad bytekod, inte källkod.