java字段名和方法名长度限制是多少,为什么?
字段名和方法名都存储在常量池中,存储这2个名称需要用到常量池中的constant_utf8_info类型来存储,以下是constant_utf8_info的存储结构,
constant_utf8_info的最大长度也是java中方法名字段名的长度,这里最大长度就是length的最大值,即u2类型能表达的最大值为65535,所以java程序中定义了超过64kb英文字符的变量或者方法名,即使规则和名字符号全部合法,也无法编译.
1kb=1024字节
64kb=65536字节 是临街值,不能等于64kb