Getting Around the Java Compiler’s 64K Limitation

Getting Around the Java Compiler’s 64K Limitation

If a class data frame’s size goes above 64K (65536 bytes), the Java compiler rejects the compilation. The compiler’s limitation is due to its ability to handle the larger data frames. While it may not be possible to change the compiler, you can use inheritance to deal with this problem. The following example demonstrates the problem and solution.

Say you’ve got a class called GlobalDefinitions, and its number of class members exceeds the 64K. Create a new class called GlobalDefinitions1 and move 80 percent of your data members from GlobalDefinitions to GlobalDefinitions1/.

Now, change GlobalDefinitions‘s declaration to extend from GlobalDefinitions1.

If GlobalDefinitions was already extending from some other class, you should move it to GlobalDefinitions1.

This change makes all the members available through inheritance, while keeping individual classes below 64K. You can extend this for any class size by introducing various intermediate classes.


About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist