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.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: