对JVM尚有什么不懂的?带你深入浅出JVM!
当一个非常被抛出,JVM会为当前要领探求一个匹配的处理赏罚器。假如没有找到,那么该要领最终会冒昧地出栈当前stackframe而非常会被从头抛出到挪用链(新的frame)。假如在全部的frame都出栈之前照旧没有找到非常处理赏罚器,那么当前列程将会被终止。虽然这也也许会导致JVM被终止,假如非常被抛出到最后一个非靠山线程的话,好比该线程就是主线程。 最终非常处理赏罚器会匹配全部的非常范例而且无论什么时辰该范例的非常被抛出老是会获得执行。在没有非常抛出的例子中,finally块如故会在要领的最后被执行。一旦return语句被执行就会当即跳转到finally代码块继承执行。 字符较量 字符较量(character comparison)是指凭证字典序次对单个字符或字符串举办较量巨细的操纵,一样平常都是以ASCII码值的巨细作为字符较量的尺度。 标记表 标记表在编译措施事变的进程中必要不绝网络、记录和行使源措施中一些语法标记的范例和特性等相干信息。这些信息一样平常以表格情势存储于体系中。如常数表、变量名表、数组名表、进程名表、标号表等等,统称为标记表。对付标记表组织、结构和打点要领的优劣会直接影响编译体系的运行服从。 在JVM中,内部字符串被存储在字符串表中。字符串表是一个hashtable映射工具指针到标记(好比:Hashtable 当类被加载时,字符串字面量会被编译器自动“内部化”而且被插手到字符表。其它字符串类的实例可以通过挪用String.intern()来明晰地内部化。当String.intern()被挪用,假如标记内外已经包括该字符串,那么指向该字符串的引用将被返回。假如该字符串没有包括在字符表,则会被插手到字符串表同时返回其引用 【编辑保举】
点赞 0 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |