Java
Java is a high-level, class-based, object-oriented programming language originally developed by James Gosling at Sun Microsystems (which has since merged into Oracle Corporation) based on an earlier project to develop a programming language for embedded cable television systems, and released in 1995 as a core component of Sun Microsystems' Java platform.
There are 3 billion devices that run Java, mostly phones, Blu-ray players, servers, and TV sets.
The language derives much of its syntax from C and C++, but it has fewer low-level facilities than either of them. Java applications are typically compiled to bytecode (class file) that can run on any Java virtual machine (JVM) regardless of computer architecture.
Java is a general-purpose, concurrent, class-based, object-oriented language that is specifically designed to have as few implementation dependencies as possible. It is intended to let application developers "write once, run anywhere" (WORA), meaning that code that runs on one platform does not need to be recompiled to run on another. The JAR format (zipped Java classes) is used by Java in addition to
.jar and
.class files.
BD-J note: Blu-ray Disc Java (BD-J) is based on Java ME and is locked to the Java 1.3 language level and class-file format. Newer versions of Java are not compatible with BD-J players.
Want to learn Java 1.3 and BD-J programming?
If you wish to learn Java 1.3 and the programming documentation for Blu-ray, visit our dedicated documentation site:
→ code.blu-ray.org.uk
| Example Code from Blu-play.com by Mistalu |
|---|
|
Java 1.3 & BD-J
Learning Version 1.3 of the Java programming language is necessary for BD-J development. BD-J uses the Java ME platform (Personal Basis Profile of the Connected Device Configuration) and is limited to the Java 1.3 language level and class-file format.
This means:
- Core Java syntax and object-oriented programming from the late 90s / early 2000s era.
- No modern features are allowed (no enums, generics, lambdas, var, try-with-resources, etc.).
- BD-J applications are Xlets (not regular programs with a
mainmethod). - Graphics and UI are done with HAVi (
org.havi.ui.*) and Blu-ray packages (org.bluray.*).
For full tutorials, language details, and API documentation, see the dedicated site:
→ code.blu-ray.org.uk
Java can feel moderately challenging as a first programming language for complete beginners due to its strict syntax and object-oriented focus, but with patience and good resources, most people start building simple programs comfortably within 3–6 months.
Book Recommendations
Since BD-J sticks to Java 1.3 fundamentals (no post-1.3 features), focus on late-90s/early-2000s books that teach clean core Java. These match the language level perfectly and help with OOP, threads, and basics needed for Xlets.
| Book | Description | ISBN |
|---|---|---|
|
Beginning Java 2 - JDK 1.3 Edition by Ivor Horton (2000) The best pure-language tutorial for exactly JDK 1.3. Comprehensive, beginner-to-intermediate, with exercises—ideal before BD-J specifics. |
1-86100-366-8 / 978-1861003669 | |
|
Java in a Nutshell: A Desktop Quick Reference (1st edition, 1996 by David Flanagan, or 2nd/3rd editions ~1997–2000) Classic O'Reilly concise reference. Great for quick lookups on syntax/APIs without modern fluff. 90s vibe, fully compatible. |
1-56592-183-6 | |
|
Learning Java (early editions ~2000–2002 by Patrick Niemeyer & Jonathan Knudsen, e.g. 2nd ed.) O'Reilly tutorial-style intro with practical examples; covers Java 2 era but stays close to 1.3. |
0-596-00285-8 | |
|
Java Network Programming, 2nd Edition by Elliotte Rusty Harold, O'Reilly (2000). Relevant for advanced BD-J networking (java.net APIs). Optional. | 1-56592-870-9 / 978-1565928701 |
|
Programming HD DVD and Blu-ray Disc: The HD Cookbook by Michael Zink, Philip C. Starner, and Bill Foote (2008) The official companion to the open-source HDCookbook project. Covers BD-J Xlets, HAVi UI, GRIN, media playback, disc structure and tools. Closest thing to a comprehensive BD-J guide. See Errata for corrections. |
978-0071496704 |
References
- Java (Wikipedia)
- Ant: tool for building Java applications
- Introduction to Programming in Java (free online textbook)
- Java SE Naming and Versions
Author(s) : Æ Firestone - Last Updated: 11/09/2026
Popular Pages
-
Ultra HD Blu-ray ( 4K Ultra HD , UHD-BD , UHD , or 4K Blu-ray ) is a digital multimedia optical disc format that is an enhanced variant a...
-
A BD player (Sony BDP-S3700) A Blu-ray Player (or BD player) is an embedded device that plays Blu-ray Discs. Like PC, Blu-ray players come ...
-
A BD-J Object, unlike an Movie Object, is not an object file, but a table of Java applications or command programs (Xlets), that...

