编译的时候出现以下错误:
invalid instr iconst_1 in class-initializer MemoryTest, <clinit>, ()V, attr code-attr: code-attr, STATIC
后来发现变量声明错误:
static byte[] sRam = JCSystem.makeTransientByteArray((short) 16,JCSystem.CLEAR_ON_RESET);
makeTransient 所创造的对象会放在Ram里面,但是static声明的变量要放在EEPROM里面,所以以上语句就爆出了题目的错误!!
本文探讨了JavaCard开发中常见的内存分配错误,具体为尝试将通过makeTransient创建的对象放置在EEPROM而非RAM中导致的问题,并给出了正确的变量声明方式。

被折叠的 条评论
为什么被折叠?



