{"id":321683,"date":"2021-04-19T09:00:45","date_gmt":"2021-04-19T09:00:45","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=321683"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=321683","title":{"rendered":"NullPointerException \u0432 \u0447\u0443\u0436\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435, \u0438\u043b\u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u0438 \u0441 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u043e\u043c"},"content":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\">\u041f\u0440\u0438\u0432\u0435\u0442, \u0445\u0430\u0431\u0440!<\/p>\n<p>  \u0411\u044b\u043b \u0442\u0451\u043f\u043b\u044b\u0439 \u043f\u044f\u0442\u043d\u0438\u0447\u043d\u044b\u0439 \u0432\u0435\u0447\u0435\u0440, \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0441\u043a\u043e\u0440\u0435\u0435 \u0431\u0435\u0436\u0430\u0442\u044c \u0434\u043e\u043c\u043e\u0439, \u043f\u0435\u0440\u0435\u0441\u0435\u0441\u0442\u044c \u0438\u0437 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0433\u043e \u043a\u0440\u0435\u0441\u043b\u0430 \u043d\u0430 \u043a\u0440\u0435\u0441\u043b\u043e \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432 \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u043c\u0435\u0442\u0440\u0430\u0445, \u0430 \u0442\u0435\u0441\u0442\u044b \u0432\u0441\u0451 \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b\u0438. \u041f\u0440\u0438\u0447\u0451\u043c \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b\u0438 \u043e\u043d\u0438 \u0441\u0430\u043c\u044b\u043c \u0438\u0437\u043e\u0449\u0440\u0451\u043d\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: \u043f\u0430\u0434\u0430\u044f \u043f\u0440\u044f\u043c\u043e \u0433\u0434\u0435-\u0442\u043e \u0432 \u043d\u0435\u0434\u0440\u0430\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438.<br \/>  \u0421\u0430\u043c\u043e\u0435 \u043e\u0431\u0438\u0434\u043d\u043e\u0435 \u0431\u044b\u043b\u043e \u0442\u043e, \u0447\u0442\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0431\u0430\u0437\u044b, \u043f\u043e\u0434\u043d\u044f\u0442\u043e\u0439 \u0432 \u0434\u043e\u043a\u0435\u0440\u0435 \u043d\u0430 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u044d\u0442\u0438\u0445 \u043f\u0441\u0435\u0432\u0434\u043e\u0438\u043d\u0442\u0435\u0440\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0442\u0435\u0441\u0442\u043e\u0432, \u0431\u044b\u043b\u043e \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0435, \u0438 \u0444\u0438\u0447\u0443 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0430 \u0440\u0435\u0432\u044c\u044e \u2013 <code>dbunit<\/code> \u043f\u043e\u0447\u0435\u043c\u0443-\u0442\u043e \u0441\u0447\u0438\u0442\u0430\u043b, \u0447\u0442\u043e \u0443 \u043f\u043e\u0441\u0442\u0433\u0440\u0435\u0441\u0430 \u0432 \u043a\u043e\u043b\u043e\u043d\u043a\u0435 \u0441 \u0442\u0438\u043f\u043e\u043c <code>uuid<\/code> \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c <code>null<\/code>-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0438 \u043f\u0430\u0434\u0430\u043b \u043f\u0440\u0438 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438.<\/p>\n<p>  \u0412\u043e\u0442 \u043a\u0430\u043a-\u0442\u043e \u0442\u0430\u043a:  <\/p>\n<pre><code class=\"plaintext\">java.lang.NullPointerException: null at org.dbunit.ext.postgresql.UuidType.typeCast (UuidType.java:67) at org.dbunit.dataset.datatype.AbstractDataType.compare (AbstractDataType.java:83) at org.dbunit.assertion.comparer.value.IsActualEqualToExpectedValueComparer.isExpected (IsActualEqualToExpectedValueComparer.java:22) ... at java.util.concurrent.FutureTask.run (FutureTask.java:264) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1128) at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:628) at java.lang.Thread.run (Thread.java:834) <\/code><\/pre>\n<p>  \u0427\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0432\u0435\u0440\u0441\u0438\u044f 2.6.0, \u0447\u0442\u043e \u0441\u0430\u043c\u0430\u044f \u043d\u043e\u0432\u0430\u044f 2.7.0 \u2013 \u0443\u0432\u044b.<\/p>\n<p>  \u0412\u0435\u0447\u0435\u0440 \u0431\u044b\u043b \u0442\u0451\u043f\u043b\u044b\u0439, \u043d\u043e\u0443\u0442\u0431\u0443\u043a \u0433\u0440\u0435\u043b\u0441\u044f, \u043d\u043e \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u043b \u0432\u043e \u0438\u043c\u044f \u0442\u0438\u0448\u0438\u043d\u044b \u0438 \u0442\u0440\u043e\u0442\u0442\u043b\u0438\u043b\u0441\u044f \u0434\u043e \u0436\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043c\u043d\u043e\u0433\u0438\u0435 \u0433\u043e\u0434\u044b \u043d\u0430\u0437\u0430\u0434 600 \u041c\u0413\u0446, \u0438 \u0431\u044b\u043b\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439:<\/p>\n<p>  0. <a href=\"https:\/\/sourceforge.net\/p\/dbunit\/bugs\/\" rel=\"nofollow noopener noreferrer\">\u0417\u0430\u0440\u0435\u043f\u043e\u0440\u0442\u0438\u0442\u044c<\/a> \u0431\u0430\u0433 \u0432 dbunit \u0438 \u0436\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u043e\u0439 \u0435\u0433\u043e \u0432\u0435\u0440\u0441\u0438\u0438, \u0435\u0441\u043b\u0438 pull-request \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u0440\u0438\u043c\u0443\u0442.<br \/>  1. \u0417\u0430\u043a\u043e\u0441\u0442\u044b\u043b\u0438\u0442\u044c \u0442\u0435\u0441\u0442\u044b, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0438 \u043d\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u043b\u0438 \u0442\u0435 uuid-\u043a\u043e\u043b\u043e\u043d\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 null, \u0445\u043e\u0442\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u043e \u043e\u043d\u0438 \u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c.<br \/>  2. \u0412\u043e\u043e\u0431\u0449\u0435 \u0443\u0431\u0440\u0430\u0442\u044c \u0442\u0435\u0441\u0442\u044b. \u041a\u0441\u0442\u0430\u0442\u0438, \u043a\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u0438\u0448\u0435\u0442 \u0442\u0435\u0441\u0442\u044b \u043d\u0430 \u0442\u0435\u0441\u0442\u044b?..<br \/>  3. \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c \u0438 \u043d\u044b\u0440\u043d\u0443\u0442\u044c \u0441 \u0433\u043e\u043b\u043e\u0432\u043e\u0439 \u0432 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f.<br \/>  <a name=\"habracut\"><\/a><br \/>  \u0412\u0430\u0440\u0438\u0430\u043d\u0442 0 \u0431\u044b\u043b \u0431\u044b \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0434\u043e\u043b\u043e\u0433 (\u0434\u0430 \u0438 \u043d\u0435 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435, \u043d\u043e \u0437\u0430\u0440\u0435\u043f\u043e\u0440\u0442\u0438\u0442\u044c \u043d\u0430\u0434\u043e \u0431\u044b), \u0432\u0430\u0440\u0438\u0430\u043d\u0442 1 \u043e\u0441\u0442\u0430\u0432\u0430\u043b\u0441\u044f \u043a\u0430\u043a \u0437\u0430\u043f\u0430\u0441\u043d\u043e\u0439, \u0432\u0430\u0440\u0438\u0430\u043d\u0442 2 \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b \u043f\u043e \u043b\u0438\u0447\u043d\u043e\u043c\u0443 \u043f\u0435\u0440\u0444\u0435\u043a\u0446\u0438\u043e\u043d\u0438\u0437\u043c\u0443 \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438. \u0410 \u0432\u043e\u0442 \u0442\u0440\u0435\u0442\u0438\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0431\u044b\u043b \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d.<\/p>\n<p>  \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u0432\u0438\u043d\u043e\u0432\u043d\u0438\u043a\u0430:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ii\/v4\/m-\/iiv4m-kx9op71lss90qn3dvgtqy.png\" alt=\"culprit.png\"><\/p>\n<p>  \u041d\u0430\u043b\u0438\u0446\u043e \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u0435 \u043a\u0430\u043a\u043e\u0433\u043e-\u0442\u043e \u043d\u0435\u044f\u0432\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u0430.<br \/>  \u0411\u044b\u0441\u0442\u0440\u043e\u0435 \u0433\u0443\u0433\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0430 JBE \u2013 Java Bytecode Editor. \u0412\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u043f\u0430\u0441\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u043e\u043d \u0442\u0440\u0435\u0431\u0443\u0435\u0442 1.5 \u0434\u0436\u0430\u0432\u0443 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b, \u0430 \u043f\u0440\u043e\u0435\u043a\u0442 \u0432\u043e\u0432\u0441\u044e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 11. \u041d\u0443, \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u0442\u043e \u0438 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f, \u0447\u0442\u043e\u0431\u044b \u0441\u0442\u0440\u0435\u043c\u0433\u043b\u0430\u0432 \u0431\u0435\u0436\u0430\u0442\u044c \u043d\u0430\u0432\u0441\u0442\u0440\u0435\u0447\u0443 \u043f\u0440\u0438\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f\u043c, \u043f\u043e\u043f\u0443\u0442\u043d\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u044e \u0441\u0432\u043e\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f.<\/p>\n<p>  \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0438\u0437 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e <code>.m2<\/code> \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f jar-\u0444\u0430\u0439\u043b, \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430\u2026 \u041a\u0430\u043a \u0435\u0433\u043e \u043d\u0430\u0437\u0432\u0430\u0442\u044c-\u0442\u043e? \u0410\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430. \u041f\u043e\u0447\u0442\u0438 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u0442\u0430\u043a \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u043d\u0435 \u043f\u043e\u0433\u0440\u0443\u0436\u0430\u043b\u0441\u044f:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/uu\/md\/vb\/uumdvbh6mtgfedcdihmzge8nw50.png\" alt=\"jbe_before.png\"><\/p>\n<p>  \u0427\u0442\u043e \u0436\u0435, <code>aload_1<\/code> \u044f\u0432\u043d\u043e \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442. \u041f\u043e\u043b\u0430\u0433\u0430\u044e, <code>aload_0<\/code> \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043b <code>this<\/code>, \u043d\u043e \u0432 \u044d\u0442\u043e\u043c \u043c\u0435\u0442\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043e\u0442 \u0432\u0441\u0435\u0439 \u043c\u043e\u0449\u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432. \u0417\u0430\u0442\u0435\u043c \u0438\u0434\u0451\u0442 \u0432\u044b\u0437\u043e\u0432 \u0441\u0430\u043c\u043e\u0439 \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u043e\u0439 <code>toString()<\/code>. \u0417\u0430\u0431\u044b\u043b \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u043d\u043e \u0435\u0441\u043b\u0438 \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0432\u0435\u0440\u043d\u0451\u0442 <code>null<\/code>, \u0442\u043e \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u0442\u0440\u0430\u0448\u043d\u043e\u0433\u043e \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0434\u0451\u0442, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432 \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0449\u0435\u043c \u0435\u0433\u043e <code>AbstractDataType#compare<\/code> \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 <code>null<\/code> \u0434\u043b\u044f \u0434\u0432\u0443\u0445 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0441\u0442\u0435\u043a, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f <code>areturn<\/code> \u0432\u0435\u0440\u043d\u0451\u0442 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u0441\u0442\u0440\u043e\u043a\u0443. \u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0432\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u0438 \u0437\u0430 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Java_bytecode_instruction_listings\" rel=\"nofollow noopener noreferrer\">\u0448\u043f\u0430\u0440\u0433\u0430\u043b\u043a\u0443<\/a>.<\/p>\n<p>  \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0440\u0443\u043a\u0430\u043c\u0438 \u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0431\u0430\u0439\u0442-\u043a\u043e\u0434 \u043c\u043d\u0435 \u0432\u043f\u0435\u0440\u0432\u044b\u0435, \u0445\u043e\u0440\u043e\u0448\u043e \u0431\u044b \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u043c\u043d\u0435 \u043d\u0430\u0434\u043e \u0432 \u0438\u0442\u043e\u0433\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c. \u0421\u043e\u0437\u0434\u0430\u0451\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0441 \u0434\u0432\u0443\u043c\u044f \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438: \u043f\u043e\u0445\u043e\u0436\u0438\u043c \u043d\u0430 \u0438\u043c\u0435\u044e\u0449\u0438\u043c\u0441\u044f \u0438 \u043f\u043e\u0445\u043e\u0436\u0438\u043c \u043d\u0430 \u0436\u0435\u043b\u0430\u0435\u043c\u044b\u0439:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/jh\/u6\/qf\/jhu6qftgyhkue62fmz3xculkefw.png\" alt=\"donor.png\"><\/p>\n<p>  \u0417\u0430\u043f\u0438\u0445\u0438\u0432\u0430\u0435\u043c \u0438\u0445 \u0432 JBE \u0438 \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043a\u043e\u0434 \u043c\u0435\u0442\u043e\u0434\u0430 \u0438\u0437 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u0430\u043a \u0434\u0432\u0435 \u043a\u0430\u043f\u043b\u0438 \u0432\u043e\u0434\u044b \u043f\u043e\u0445\u043e\u0436 \u043d\u0430 \u0437\u0430\u043c\u0435\u043d\u044f\u043c\u044b\u0439. \u042d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u043e, \u044d\u0442\u043e \u0431\u044b\u043b\u043e \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u043e:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/5y\/_k\/ld\/5y_klddjcptks13mnomj19zjcpy.png\" alt=\"jbe_donor_orig.png\"><\/p>\n<p>  \u041a\u043e\u0434 \u043d\u043e\u0432\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0441\u0438\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/a1\/zp\/si\/a1zpsiklsuvrypoxffq5xy5blmm.png\" alt=\"jbe_donor.png\"><\/p>\n<p>  \u0421\u0442\u0440\u043e\u043a\u0438 5-6-7 \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u043d\u044b\u043c\u0438, \u0430 \u0432\u043e\u0442 \u0441\u0432\u0435\u0440\u0445\u0443\u2026 <code>goto<\/code>?! \u0418 \u0437\u0430\u0447\u0435\u043c-\u0442\u043e \u043b\u0438\u0448\u043d\u0438\u0439 <code>aload_1<\/code>. \u0428\u043f\u0430\u0440\u0433\u0430\u043b\u043a\u0430 \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e <code>ifnonnull<\/code> \u0443\u043d\u0438\u0447\u0442\u043e\u0436\u0430\u0435\u0442 \u0432\u0435\u0440\u0445\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0441\u0442\u0435\u043a\u0430, \u0442\u0430\u043a \u0447\u0442\u043e \u043e\u043d \u043d\u0435 \u043b\u0438\u0448\u043d\u0438\u0439. \u041d\u043e \u043d\u0435 \u0441\u0443\u0442\u044c \u0432\u0430\u0436\u043d\u043e.<\/p>\n<p>  \u0412\u0430\u0436\u043d\u043e \u0434\u0440\u0443\u0433\u043e\u0435, \u0447\u0442\u043e \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 <code>Object#toString()<\/code> \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043f\u0443\u043b\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442 \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 #68, \u0430 \u0432 \u043d\u043e\u0432\u043e\u043c \u2013 \u043f\u043e #2. \u041e\u0445, JBE, \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u0442\u044b \u0441\u043f\u0430\u0441\u0451\u0448\u044c \u043c\u0435\u043d\u044f \u043e\u0442 \u0440\u0443\u0447\u043d\u043e\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430:<br \/>  <a href=\"https:\/\/habrastorage.org\/webt\/t5\/gw\/xm\/t5gwxm_s8ius88dii0zdkgw62pi.png\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/t5\/gw\/xm\/t5gwxm_s8ius88dii0zdkgw62pi.png\" alt=\"jbe_different_constant_pool.png\"><\/a><\/p>\n<p>  \u041a\u043e\u043f\u0438\u0440\u0443\u0435\u043c-\u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435, \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c\u2026<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/nk\/6h\/rm\/nk6hrmhvqqehxd99unpzxsuw1q4.png\" alt=\"jbe_save_failed.png\"><\/p>\n<p>  \u041e, \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u0430\u0440\u0445\u0438\u0432? \u0410, \u043d\u0443, \u043e\u043a. \u0412\u044b\u0442\u0430\u0449\u0438\u043c <code>.class<\/code> \u0438\u0437 \u0430\u0440\u0445\u0438\u0432\u0430, \u043f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0438 \u043f\u043e\u043b\u043e\u0436\u0438\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u043e.<\/p>\n<p>  \u0412\u043e\u0442, \u0442\u0435\u043f\u0435\u0440\u044c \u0434\u0440\u0443\u0433\u043e\u0435 \u0434\u0435\u043b\u043e! \u041f\u0440\u0430\u0432\u0434\u0430, \u043f\u043e\u0441\u043b\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043b\u0441\u044f \u043f\u0443\u043d\u043a\u0442 \u043a\u043e\u0434\u0430 \u0432 \u0434\u0435\u0440\u0435\u0432\u0435 \u0441\u043b\u0435\u0432\u0430, \u043f\u0440\u044f\u043c\u043e \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b \u043d\u0430\u0436\u0438\u043c\u0430\u0442\u044c\u0441\u044f. \u041d\u043e \u043d\u0435 \u0441\u0443\u0442\u044c \u0432\u0430\u0436\u043d\u043e.<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/vb\/rb\/7i\/vbrb7isq-qv5zacbvebvpnrayf8.png\" alt=\"jbe_after_save.png\"><\/p>\n<p>  \u041e\u0442\u043a\u0440\u043e\u0435\u043c \u0435\u0433\u043e \u0441 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0435 \u0418\u0434\u0435\u0438 \u2013 \u0447\u0438\u0441\u0442\u043e \u0434\u043b\u044f \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u044f \u0431\u044b\u043b\u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0439, \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0439, \u0434\u043e\u0440\u043e\u0433\u043e\u0439 \u044e\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043e\u0442\u0434\u0435\u043b! \u042f \u0431\u044b \u0438 \u0442\u0430\u043a \u043c\u043e\u0433 \u043f\u043e\u0434\u043b\u043e\u0436\u0438\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0439 jar-\u0430\u0440\u0445\u0438\u0432, \u0431\u0435\u0437 \u044d\u0442\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438.<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/r6\/wz\/b8\/r6wzb8h0-33bsgk4r4qoteqvox0.png\" alt=\"modified.png\"><\/p>\n<p>  \u041a\u0441\u0442\u0430\u0442\u0438, \u043e\u0431 \u043f\u043e\u0434\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043d\u0438\u0438. \u0412 <code>.m2<\/code>-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u043b\u0435\u0436\u0430\u0442 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0435 \u0441\u0443\u043c\u043c\u044b \u0444\u0430\u0439\u043b\u043e\u0432. \u0418\u0445 \u043f\u0435\u0440\u0435\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u043b\u0435\u043d\u0438\u0432\u043e, \u0434\u0430 \u0438 \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u043b\u0438\u0431\u0443 \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0442\u0430\u0449\u0438\u0442\u044c \u0441 \u0441\u043e\u0431\u043e\u0439 \u0432 \u0433\u0438\u0442-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439.<\/p>\n<p>  \u0423\u0431\u0438\u0440\u0430\u0435\u043c <code>dbunit<\/code> \u0438\u0437 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0438 \u043f\u043e\u0434\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u043c \u0441\u0432\u043e\u0439 \u0432 <code>system<\/code>-scope.<br \/>  <a href=\"https:\/\/habrastorage.org\/webt\/2y\/nw\/26\/2ynw26q5xpzlvosfwegwndkc2ik.png\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/2y\/nw\/26\/2ynw26q5xpzlvosfwegwndkc2ik.png\" alt=\"maven_exclude.png \u0438 maven_include.png\"><\/a><\/p>\n<p>  \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0447\u0442\u043e \u043e\u043d\u043e \u0442\u043e\u0447\u043d\u043e \u043f\u043e\u0434\u0445\u0432\u0430\u0442\u0438\u043b\u043e\u0441\u044c. <code>mvn dependency:tree<\/code><br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/5e\/dg\/lk\/5edglklxohab3kfdjuawoixlopi.png\" alt=\"maven_dependency_tree.png\"><\/p>\n<p>  \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0442\u0435\u0441\u0442\u044b \u2013 \u0438\u2026<br \/>  <a href=\"https:\/\/habrastorage.org\/webt\/ji\/xj\/2f\/jixj2fs9rvfbcmcch4vkaibhijg.png\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ji\/xj\/2f\/jixj2fs9rvfbcmcch4vkaibhijg.png\" alt=\"failure_1.png\"><\/a><\/p>\n<p>  \u041f\u0430\u0434\u0435\u043d\u0438\u0435, \u043f\u0440\u0438\u0447\u0451\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435. \u042f \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043b \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u044c \u0441\u0442\u0430\u0442\u044c\u044e \u043d\u0430 \u044d\u0442\u043e\u043c \u043c\u043e\u043c\u0435\u043d\u0442\u0435, \u043d\u0430\u043c (\u043d\u0435) \u043f\u043e\u0432\u0435\u0437\u043b\u043e. \u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442\u0441\u044f, \u0434\u043e\u0440\u043e\u0433\u043e\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c!<\/p>\n<p>  <a href=\"https:\/\/stackoverflow.com\/a\/26734332\/7643283\" rel=\"nofollow noopener noreferrer\">\u041e\u0442\u0432\u0435\u0442 \u043d\u0430 StackOverflow<\/a> \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u0432 \u044d\u0442\u043e\u043c \u0432\u0438\u043d\u043e\u0432\u0430\u0442\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 <code>StackMapTable<\/code>, \u0438 \u043a\u0430\u043a \u0441 \u044d\u0442\u0438\u043c \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c\u0441\u044f. \u0418\u043c\u0435\u0435\u043c \u0432 \u0437\u0430\u043f\u0430\u0441\u0435 \u043f\u043b\u0430\u043d \u0411 \u2013 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u043e\u0440 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0430. \u041d\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043b\u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435 \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u0447\u0438\u043d\u0438\u0442\u044c \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u044b\u0439 \u0444\u0430\u0439\u043b? \u0412\u0441\u0451 \u0436\u0435 \u043d\u0435\u0441\u043f\u0440\u043e\u0441\u0442\u0430 \u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439 \u043d\u0430 1.5 Java Bytecode Editor \u0431\u0443\u0434\u0435\u0442 \u0441\u0435\u0431\u044f \u0432\u0435\u0441\u0442\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u0440\u0430\u043d\u043d\u043e \u043d\u0430 11 \u0432\u0435\u0440\u0441\u0438\u0438 \u0434\u0436\u0430\u0432\u044b, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u043e\u0440 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0430 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0432 1.6 \u0432\u0435\u0440\u0441\u0438\u0438 \u044f\u0437\u044b\u043a\u0430, \u044d\u0432\u043e\u043b\u044e\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043b \u0432 1.7 \u0438, \u043d\u0430\u043a\u043e\u043d\u0435\u0446, \u0441\u0442\u0430\u043b \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0432 1.8.<\/p>\n<p>  \u041e\u0442\u043a\u0440\u043e\u0435\u043c \u043e\u0431\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 <code>.class<\/code>-\u0444\u0430\u0439\u043b\u0430 \u0432 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u043e\u0432\u043e\u043c \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0449\u0438\u043a\u0435 \u0418\u0434\u0435\u0438:<br \/>  <a href=\"https:\/\/habrastorage.org\/webt\/2y\/nw\/26\/2ynw26q5xpzlvosfwegwndkc2ik.png\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/cm\/lf\/97\/cmlf9735zciace2k52sfanpzone.png\" alt=\"idea_bytecode_old.png \u0438 idea_bytecode_new.png\"><\/a><br \/>  <i>\u0421\u0432\u0435\u0440\u0445\u0443 \u2013 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b, \u0441\u043d\u0438\u0437\u0443 \u2013 \u043f\u043e\u0441\u043b\u0435 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 JBE<\/i><\/p>\n<p>  \u0412\u044b \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438, \u0434\u0430? \u0423 \u043d\u043e\u0432\u043e\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u0434\u043e \u043c\u0435\u0442\u043a\u0438 \u0441\u0442\u0440\u043e\u043a\u0438 L0 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u043d\u043e \u0443 \u043d\u0438\u0445 \u043d\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043c\u0435\u0442\u043a\u0438. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0432 \u044d\u0442\u043e\u043c \u0434\u0435\u043b\u043e? \u0421\u0442\u043e\u0438\u0442 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0431\u0430\u0439\u0442\u043a\u043e\u0434 \u043a\u043b\u0430\u0441\u0441\u0430 <code>Tmp<\/code>:<br \/>  <a href=\"https:\/\/habrastorage.org\/webt\/on\/z5\/8g\/onz58g18ozvlsylgn9vkvj3gm1u.png\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/on\/z5\/8g\/onz58g18ozvlsylgn9vkvj3gm1u.png\" alt=\"idea_bytecode_tmp.png\"><\/a><\/p>\n<p>  \u041f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043d\u043e\u0432\u044b\u0439 <code>frame same<\/code>. \u041d\u043e \u0447\u0442\u043e \u044d\u0442\u043e? \u0418 \u0432 \u0448\u043f\u0430\u0440\u0433\u0430\u043b\u043a\u0435 \u0435\u0433\u043e \u043d\u0435\u0442. \u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e, \u0435\u0441\u0442\u044c <a href=\"https:\/\/stackoverflow.com\/a\/25110513\/7643283\" rel=\"nofollow noopener noreferrer\">\u0431\u043e\u043b\u0435\u0435 \u043a\u0440\u0443\u0442\u043e\u0439 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 Stackoverflow<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u0437\u0430 \u0444\u0440\u0435\u0439\u043c\u044b \u0442\u0430\u043a\u0438\u0435, \u0438, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 \u043d\u0430\u0441 \u0432 \u044d\u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442, \u0447\u0442\u043e \u043e\u043d\u0438 \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f \u043a <code>StackMapTable<\/code>.<\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e \u0444\u0440\u0435\u0439\u043c\u044b<\/b>                         <\/p>\n<div class=\"spoiler_text\">\u0412 \u043e\u0431\u0449\u0435\u043c, \u0434\u0436\u0430\u0432\u0430 \u043a\u043e\u0433\u0434\u0430-\u0442\u043e \u0434\u0430\u0432\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u043b\u0430 \u043d\u0430 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0432\u0430\u043b\u0438\u0434\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430, \u043d\u043e \u0434\u0435\u043b\u0430\u043b\u0430 \u044d\u0442\u043e \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e. \u0418 \u0447\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430, \u0442\u0435\u043c \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u0435\u0435. \u0412 \u0432\u0435\u0440\u0441\u0438\u0438 1.6 \u0442\u0435\u043f\u0435\u0440\u044c \u0443\u0436\u0435 \u041e\u0440\u0430\u043a\u043b \u0440\u0435\u0448\u0438\u043b \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0432\u0430\u043b\u0438\u0434\u0430\u0442\u043e\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0433 \u0431\u044b \u0432\u0430\u043b\u0438\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0439\u0442\u043a\u043e\u0434 \u0437\u0430 \u043e\u0434\u0438\u043d \u043f\u0440\u043e\u0445\u043e\u0434. \u041d\u043e \u043c\u0435\u043d\u044f\u0442\u044c \u0444\u043e\u0440\u043c\u0430\u0442 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u0440\u0435\u0447\u0438\u043b\u043e \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 (\u043d\u043e \u0440\u0430\u0434\u0438 \u0434\u0436\u0435\u043d\u0435\u0440\u0438\u043a\u043e\u0432 \u0441\u0442\u043e\u0438\u043b\u043e \u0431\u044b. :\/), \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u0432\u0435\u0440\u0441\u0438\u0438 1.7 \u043d\u0443\u0436\u043d\u0443\u044e \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043f\u043e\u043b\u043e\u0436\u0438\u043b\u0438 \u0432 \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043f\u043e\u0434 \u0438\u043c\u0435\u043d\u0435\u043c <code>StackMapTable<\/code>.<\/p>\n<p>  \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043c\u0435\u0442\u043e\u0434\u0430\u0445 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043a\u0430\u0436\u0434\u043e\u043c \u0442\u0438\u043f\u0435 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u0446\u0435\u043b\u0435\u0441\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u043e, \u0435\u0451 \u0445\u0440\u0430\u043d\u044f\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0442\u0435\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0443\u0441\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u0438\u043b\u0438 \u0431\u0435\u0437\u0443\u0441\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430. \u0422\u043e, \u0447\u0442\u043e \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043c\u0435\u0436\u0434\u0443 \u043d\u0438\u043c\u0438, \u0441\u0432\u043e\u0439 \u0442\u0438\u043f \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0435. \u041d\u0443 \u0438\u043b\u0438 \u0447\u0442\u043e-\u0442\u043e \u0432 \u044d\u0442\u043e\u043c \u0440\u043e\u0434\u0435, \u0434\u043b\u044f \u043f\u043e\u0432\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f \u044d\u0442\u043e \u043d\u0435 \u0432\u0430\u0436\u043d\u043e. \u041d\u0430\u0434\u043e \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u0434\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u0443\u0441\u043e\u0447\u0435\u043a \u043a\u043e\u0434\u0430, \u0430 \u043a\u0442\u043e \u0445\u043e\u0447\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u2013 \u043b\u0443\u0447\u0448\u0435 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 StackOverflow \u0432 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u0435.  <\/div>\n<\/p><\/div>\n<p>  \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.7.4\" rel=\"nofollow noopener noreferrer\">\u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e \u043d\u0430 JVM<\/a> \u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0447\u0442\u043e \u0437\u0430 <code>StackMapTable<\/code> \u0442\u0430\u043a\u043e\u0439, \u0438 \u0447\u0442\u043e \u0441 \u043d\u0438\u043c \u0434\u0435\u043b\u0430\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u043b\u0443\u0447\u0448\u0435.<\/p>\n<p>  \u0423 \u043d\u0435\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0444\u043e\u0440\u043c\u0430\u0442:  <\/p>\n<pre><code class=\"plaintext\">StackMapTable_attribute {     u2              attribute_name_index;     u4              attribute_length;     u2              number_of_entries;     stack_map_frame entries[number_of_entries]; } <\/code><\/pre>\n<p>  \u2022 <code>attribute_name_index<\/code> \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 \u043f\u0443\u043b\u0435 \u0441\u0442\u0440\u043e\u043a \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u00abStackMapTable\u00bb.<br \/>  \u2022 <code>attribute_length<\/code>, \u043f\u043e\u0445\u043e\u0436\u0435, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0434\u043b\u0438\u043d\u0443 \u0432\u0441\u0435\u0445 \u0444\u0440\u0435\u0439\u043c\u043e\u0432, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u0437\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0445 \u0448\u0435\u0441\u0442\u0438 \u0431\u0430\u0439\u0442, \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u0434 \u044d\u0442\u043e \u0438 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0435 \u043f\u043e\u043b\u0435.<br \/>  \u2022 <code>number_of_entries<\/code> \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u0444\u0440\u0435\u0439\u043c\u043e\u0432 \u0432 \u044d\u0442\u043e\u043c \u043c\u0435\u0442\u043e\u0434\u0435(\u043c\u0435\u0442\u043e\u0434\u0435 \u043b\u0438?).<br \/>  \u2022 <code>entries[]<\/code>, \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0438 \u0435\u0441\u0442\u044c \u0442\u0435 \u0444\u0440\u0435\u0439\u043c\u044b \u0441 \u043a\u0443\u0441\u043a\u0430\u043c\u0438 \u043a\u043e\u0434\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u0434\u043e \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c.<\/p>\n<p>  \u0421\u0442\u0440\u043e\u043a\u0430 \u0432 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u043e\u043c \u043f\u0443\u043b\u0435 \u0432 \u044d\u0442\u043e\u043c \u0436\u0435 <code>.class<\/code>-\u0444\u0430\u0439\u043b\u0435, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0441\u0441\u044b\u043b\u0430\u044e\u0442\u0441\u044f, \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.4.7\" rel=\"nofollow noopener noreferrer\">\u0442\u0430\u043a<\/a>:  <\/p>\n<pre><code class=\"plaintext\">CONSTANT_Utf8_info {     u1 tag;     u2 length;     u1 bytes[length]; } <\/code><\/pre>\n<p>  <code>tag<\/code> \u2013 \u0432\u0441\u0435\u0433\u0434\u0430 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0430 <code>01<\/code>, \u0430 \u0434\u043b\u0438\u043d\u0430 \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 \u043e\u0441\u043e\u0431\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043d\u0435 \u043d\u0443\u0436\u0434\u0430\u044e\u0442\u0441\u044f.<\/p>\n<p>  \u0427\u0443\u0442\u044c \u043d\u0438\u0436\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f <code>StackMapTable_attribute<\/code> \u043b\u0435\u0436\u0438\u0442 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u043d\u0451\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f:  <\/p>\n<pre><code class=\"plaintext\">union stack_map_frame {     same_frame;     same_locals_1_stack_item_frame;     same_locals_1_stack_item_frame_extended;     chop_frame;     same_frame_extended;     append_frame;     full_frame; } <\/code><\/pre>\n<p>  \u0412\u043e\u0442, \u043e\u0442\u043a\u0443\u0434\u0430 \u0442\u043e\u0442 <code>frame same<\/code> \u0432\u0437\u044f\u043b\u0441\u044f \u0432 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0449\u0438\u043a\u0435 \u0438\u0434\u0435\u0438! \u041a\u0430\u043a\u0430\u044f-\u0442\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0438\u0437 \u0441\u0438\u0448\u043d\u043e\u0433\u043e <code>union<\/code> \u043e\u0434\u043d\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430, \u043f\u043e\u0441\u043b\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u043e\u0433\u0443\u0442 \u0438\u0434\u0442\u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0431\u0430\u0439\u0442\u044b. \u0415\u0441\u043b\u0438 \u044d\u0442\u043e\u0442 \u0431\u0430\u0439\u0442 0 \u0434\u043e 63, \u0442\u043e \u044d\u0442\u043e <code>same_frame<\/code>, \u0438 \u0437\u0430 \u043d\u0438\u043c \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0438\u0434\u0451\u0442. \u0415\u0441\u043b\u0438 \u0447\u0435\u0441\u0442\u043d\u043e, \u044f \u043c\u0430\u043b\u043e \u043f\u043e\u043d\u044f\u043b, \u0437\u0430\u0447\u0435\u043c \u043e\u043d\u043e \u043d\u0430\u0434\u043e \u0438 \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041d\u043e \u0437\u0430\u0442\u043e \u043f\u043e\u043d\u044f\u043b, \u0447\u0442\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0441\u0442\u043e\u0438\u0442 \u0438\u0441\u043a\u0430\u0442\u044c \u0438 \u043a\u0430\u043a \u043c\u0438\u043c\u0438\u043a\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0439 \u0431\u0430\u0439\u0442\u043a\u043e\u0434 \u0432\u043e\u0441\u044c\u043c\u043e\u0439 \u0434\u0436\u0430\u0432\u044b.<\/p>\n<p>  \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043c\u044b \u0432\u0441\u0451 \u0436\u0435 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0444\u0440\u0435\u0439\u043c\u043e\u0432, \u043d\u043e \u0438 \u0441\u0430\u043c \u043a\u043e\u0434 \u043c\u0435\u0442\u043e\u0434\u0430, \u0432\u043e\u0442 <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.6\" rel=\"nofollow noopener noreferrer\">\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043c\u0435\u0442\u043e\u0434\u0430<\/a>:   <\/p>\n<pre><code class=\"plaintext\">method_info {     u2             access_flags;     u2             name_index;     u2             descriptor_index;     u2             attributes_count;     attribute_info attributes[attributes_count]; } <\/code><\/pre>\n<p>  <code>access_flags<\/code> \u2013 \u043d\u0430\u043c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e 0x0001 \u2013 public, \u043c\u044b \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0438\u0445 \u0442\u0440\u043e\u0433\u0430\u0442\u044c. <code>name_index<\/code> \u0438 <code>descriptor_index<\/code> \u2013 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0438\u043c\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u044b \u0432 \u043f\u0443\u043b\u0435 \u0441\u0442\u0440\u043e\u043a. <code>attributes_count<\/code> \u2013 \u0447\u0438\u0441\u043b\u043e \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432, \u0430 <code>attributes[]<\/code> \u2013 \u0441\u0430\u043c\u0438 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u044b.<\/p>\n<p>  \u0423 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432 \u0442\u043e\u0436\u0435 \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u044f <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.7\" rel=\"nofollow noopener noreferrer\">\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430<\/a>:   <\/p>\n<pre><code class=\"plaintext\">attribute_info {     u2 attribute_name_index;     u4 attribute_length;     u1 info[attribute_length]; } <\/code><\/pre>\n<p>  \u0423 \u043c\u0435\u043d\u044f \u0441\u043e\u0437\u0434\u0430\u0451\u0442\u0441\u044f \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u044d\u0442\u043e \u0443\u0436\u0435 \u043d\u0435 \u0441\u0442\u0430\u0442\u044c\u044f, \u0430 \u043f\u0435\u0440\u0435\u043f\u0435\u0447\u0430\u0442\u043a\u0430 \u0438\u0437 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u043f\u043e JVM. \u0422\u0443\u0442 \u0438 \u0442\u0430\u043a \u043f\u043e\u043d\u044f\u0442\u043d\u043e, \u0447\u0442\u043e \u044d\u0442\u043e \u0437\u0430 \u043f\u043e\u043b\u044f, \u0438 \u0447\u0442\u043e <code>attribute_name_index<\/code> \u043e\u043f\u044f\u0442\u044c \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0441\u0442\u0440\u043e\u043a\u0443.<\/p>\n<p>  \u041a\u0441\u0442\u0430\u0442\u0438, \u0430 \u0434\u0432\u0435 \u0438\u0437 \u044d\u0442\u0438\u0445 \u0441\u0442\u0440\u043e\u043a \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u044b: \u00abCode\u00bb \u0438 \u00abStackMapTable\u00bb! \u041a\u0440\u0443\u0433 \u0437\u0430\u043c\u044b\u043a\u0430\u0435\u0442\u0441\u044f, \u0443\u0440\u0430!<\/p>\n<p>  \u0410 \u0447\u0442\u043e \u0437\u0430 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u00abCode\u00bb \u0442\u0430\u043a\u043e\u0439?  <\/p>\n<pre><code class=\"plaintext\">Code_attribute {     u2 attribute_name_index;     u4 attribute_length;     u2 max_stack;     u2 max_locals;     u4 code_length;     u1 code[code_length];     u2 exception_table_length;     {   u2 start_pc;         u2 end_pc;         u2 handler_pc;         u2 catch_type;     } exception_table[exception_table_length];     u2 attributes_count;     attribute_info attributes[attributes_count]; } <\/code><\/pre>\n<p>  \u041e\u0445. \u041d\u0435\u0442, \u043f\u043e\u0436\u0430\u043b\u0443\u0439, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u043c\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e <code>code_length<\/code> \u0438 <code>code[]<\/code>.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u043f\u044b\u0442\u0430\u0435\u043c\u0441\u044f \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435. \u0421\u043c\u043e\u0442\u0440\u0438\u043c \u0432 JBE \u0438\u043d\u0434\u0435\u043a\u0441 \u0432 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u043e\u043c \u043f\u0443\u043b\u0435 \u0434\u043b\u044f <code>StackMapTable<\/code>. \u0412\u043e\u0442 \u043e\u043d, \u043d\u043e\u043c\u0435\u0440 145, \u0438\u043b\u0438 <code>91<sub>16<\/sub><\/code>:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/py\/cn\/sy\/pycnsyjexldlu-7o95j2uuww6w8.png\" alt=\"jbe_stackmaptable_145.png\"><\/p>\n<p>  \u041f\u043e\u043f\u0443\u0442\u043d\u043e \u043d\u0430\u0445\u043e\u0434\u0438\u043c, \u0447\u0442\u043e \u043c\u0435\u0442\u043e\u0434 <code>typeCast<\/code> \u0438 \u0435\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u0430 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0430\u043c 66 \u0438 67, \u0442\u043e \u0435\u0441\u0442\u044c <code>42<sub>16<\/sub><\/code> \u0438 <code>91<sub>43<\/sub><\/code>:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ah\/gs\/wu\/ahgswuftfy1mdqj-nj4hnvaegec.png\" alt=\"jbe_method_name.png\"><\/p>\n<p>  \u00abCode\u00bb, \u043a\u0441\u0442\u0430\u0442\u0438, \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u043e \u0438\u043d\u0434\u0435\u043a\u0441\u0443 9.<\/p>\n<p>  \u0412\u043e\u043e\u0440\u0443\u0436\u0438\u0432\u0448\u0438\u0441\u044c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 <code>method_info<\/code>, \u043d\u0430\u0447\u043d\u0451\u043c \u0438\u0441\u043a\u0430\u0442\u044c \u043d\u0435\u0447\u0442\u043e, \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0435\u0435\u0441\u044f \u043d\u0430 <code>00 01<\/code> \u0434\u043b\u044f <code>public<\/code>, <code>00 42<\/code> \u0434\u043b\u044f <code>typeCast<\/code> \u0438 <code>00 43<\/code> \u0434\u043b\u044f <code>(Ljava\/lang\/Object;)Ljava\/lang\/Object;<\/code>. \u041c\u044b \u0438\u0445 \u0443\u0436\u0435 \u0432\u0438\u0434\u0435\u043b\u0438 \u0432 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u043d\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0430, \u0430 \u0432\u043e\u0442 \u043e\u043d\u0438 \u0432 \u0441\u044b\u0440\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/y-\/ah\/hi\/y-ahhi6ldo7k_-xzxancw-lw0bs.png\" alt=\"hxd_method_info_new.png\"><\/p>\n<p>  <code>00 01 00 42 00 43<\/code> \u2013 \u0442\u043e, \u0447\u0442\u043e \u043c\u044b \u0438\u0441\u043a\u0430\u043b\u0438, \u0430 \u0432\u043e\u0442 <code>00 02<\/code> \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e \u0443 \u044d\u0442\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430. \u0418 \u043f\u0435\u0440\u0432\u044b\u0439 \u0438\u0437 \u043d\u0438\u0445 \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043d\u0435\u0447\u0442\u043e <code>00 20<\/code> \u2013 JBE \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 \u00abExceptions\u00bb \u043f\u043e\u0434 \u043d\u043e\u043c\u0435\u0440\u043e\u043c 32. \u041d\u0430\u0441 \u044d\u0442\u043e\u0442 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u043d\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442, \u043c\u044b \u0435\u0433\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u043c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e, \u043f\u0440\u0430\u0432\u0434\u0430, \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043f\u043e\u0434\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.7.5\" rel=\"nofollow noopener noreferrer\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e<\/a>, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0431\u0430\u0439\u0442 \u043d\u0430\u0434\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c:  <\/p>\n<pre><code class=\"plaintext\">Exceptions_attribute {     u2 attribute_name_index;     u4 attribute_length;     u2 number_of_exceptions;     u2 exception_index_table[number_of_exceptions]; } <\/code><\/pre>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/yo\/r9\/lh\/yor9lhopz0jywmxh5jut1pizp60.png\" alt=\"hxd_exceptions.png\"><br \/>  <i><code>00 20 00 00 00 04 00 01 00 23<\/code>, \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439, \u043a\u043e\u0433\u0434\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0443\u043c\u0440\u0451\u0442. \u0418\u043b\u0438 \u0434\u043b\u044f \u043a\u043e\u043f\u0438\u0438 \u0432 \u0432\u0435\u0431\u0430\u0440\u0445\u0438\u0432\u0435.<\/i><\/p>\n<p>  <code>00 20<\/code> \u2013 \u0443\u0436\u0435 \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u0430\u044f \u0440\u0430\u043d\u0435\u0435 \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 Exceptions,<br \/>  <code>00 00 00 04<\/code> \u2013 \u0434\u043b\u0438\u043d\u0430 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 4 \u0431\u0430\u0439\u0442\u0430 \u0441\u0432\u0435\u0440\u0445 \u0448\u0435\u0441\u0442\u0438 \u0431\u0430\u0439\u0442 \u0448\u0430\u043f\u043a\u0438,<br \/>  <code>00 01<\/code> \u2013 \u043e\u0434\u043d\u043e \u0437\u0430\u0434\u0435\u043a\u043b\u0430\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435,<br \/>  <code>00 23<\/code> \u2013 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u044b\u0439 \u043f\u0443\u043b. JBE \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e #35 \u2013 <code>org\/dbunit\/dataset\/datatype\/TypeCastException<\/code>.<\/p>\n<p>  \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435, \u043e\u043d \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043d\u0430 <code>00 09<\/code> \u2013 \u0441\u0435\u043a\u0446\u0438\u044f \u00abCode\u00bb:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/by\/pt\/ez\/byptezkfbprxjlpunb-_2ccoehw.png\" alt=\"hxd_code_1.png\"><br \/>  <i>\u0412\u043e \u0438\u043c\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u043b \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u043a\u0430\u0440\u0438\u043d\u043e\u043a \u0438 \u043f\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0430\u043c\u0438: <code>00 09 00 00 00 39 00 01 00 02 00 00 00 05 2B B6 00 44 B0 00 00 00 02 00 12 00 00 00 06 00 01 00 00 00 43 00 13 00 00 00 16 00 02 00 00 00 05 00 1C 00 1D 00 00 00 00 00 05 00 4A 00 3F 00 01<\/code><\/i><\/p>\n<p>  <code>00 09<\/code> \u2013 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u00abCode\u00bb \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u043e\u0433\u043e \u043f\u0443\u043b\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430,<br \/>  <code>00 00 00 39<\/code> \u2013 \u0434\u043b\u0438\u043d\u0430 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430. \u0415\u0441\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0448\u0435\u0441\u0442\u044c \u044d\u0442\u0438\u0445 \u0431\u0430\u0439\u0442, \u0442\u043e \u0431\u0443\u0434\u0435\u0442 3F \u0431\u0430\u0439\u0442 \u043d\u0430 \u043a\u043e\u0434 \u0441 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439.<br \/>  <code>00 01<\/code> \u2013 <code>max_stack<\/code> \u2013 \u043c\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u043c <code>arg0<\/code>, \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u043d\u0430 \u043d\u0451\u043c <code>toString()<\/code> \u0438 \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c. \u0414\u0430, \u043a\u0430\u0436\u0434\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u043c\u0435\u043d\u044f\u0435\u0442 \u0441\u0442\u0435\u043a, \u043d\u043e \u043e\u043d \u0433\u043b\u0443\u0431\u0436\u0435 \u0435\u0434\u0438\u043d\u0438\u0446\u044b \u043d\u0435 \u0443\u0445\u043e\u0434\u0438\u0442.<br \/>  <code>00 02<\/code> \u2013 <code>max_locals<\/code> \u2013 \u0443 \u043d\u0430\u0441 \u0442\u043e\u043b\u044c\u043a\u043e <code>this<\/code> \u0438 <code>arg0<\/code>.<br \/>  <code>00 00 00 05<\/code> \u2013 \u043f\u044f\u0442\u044c \u0431\u0430\u0439\u0442 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439? \u0422\u0430\u043a \u043c\u0430\u043b\u043e?<br \/>  <code>2B B6 00 44 B0<\/code> \u2013 \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0441\u0430\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b.<br \/>  <code>00 00<\/code> \u2013 <code>exception_table_length<\/code>. \u0425\u043e\u0440\u043e\u0448\u043e, \u0447\u0442\u043e \u044d\u0442\u043e \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u043a\u0443\u0441\u043e\u0447\u0435\u043a \u043a\u043e\u0434\u0430.<br \/>  <code>00 02<\/code> \u2013 \u0434\u0432\u0430 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430 \u043a \u044d\u0442\u043e\u043c\u0443 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0443. \u0420\u0435\u043a\u0443\u0440\u0441\u0438\u044f-\u0441.<\/p>\n<p>  <code>00 12 00 00 00 06 00 01 00 00 00 43 00 13 00 00 00 16 00 02 00 00 00 05 00 1C 00 1D 00 00 00 00 00 05 00 4A 00 3F 00 01<\/code> \u2013 \u0447\u0442\u043e \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c. \u041f\u0435\u0440\u0432\u044b\u0439 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043d\u0430 <code>00 12<\/code>, \u043c\u044b \u0442\u0430\u043a\u043e\u0433\u043e \u0435\u0449\u0451 \u043d\u0435 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u043b\u0438. JBE \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u00abLineNumberTable\u00bb. \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u043d \u043c\u043e\u0433 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438. \u0412\u043e\u0442 \u0435\u0433\u043e <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.7.12\" rel=\"nofollow noopener noreferrer\">\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430<\/a>:   <\/p>\n<pre><code class=\"plaintext\">LineNumberTable_attribute {     u2 attribute_name_index;     u4 attribute_length;     u2 line_number_table_length;     {   u2 start_pc;         u2 line_number;     } line_number_table[line_number_table_length]; } <\/code><\/pre>\n<p>  \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0437\u0434\u0435\u0441\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0438\u0448\u044c \u043e\u0434\u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0430 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0441\u0442\u0440\u043e\u043a. \u041d\u043e \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0438 \u0435\u0451 \u0440\u0430\u0441\u043f\u0430\u0440\u0441\u0438\u043c:<br \/>  <code>00 12<\/code> \u2013 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u00abLineNumberTable\u00bb,<br \/>  <code>00 00 00 06<\/code> \u2013 \u043e \u0448\u0435\u0441\u0442\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0431\u0430\u0439\u0442\u0430\u0445,<br \/>  <code>00 01<\/code> \u2013 \u0441 \u043e\u0434\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u044c\u044e \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0441\u0442\u0440\u043e\u043a, \u0432 \u0447\u0451\u043c \u043c\u044b \u0438 \u043d\u0435 \u0441\u043e\u043c\u043d\u0435\u0432\u0430\u043b\u0438\u0441\u044c,<br \/>  <code>00 00<\/code> \u2013 <code>start_pc<\/code> \u2013 \u043f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u043d\u0443\u043b\u0435\u0432\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438,<br \/>  <code>00 43<\/code> \u2013 \u0438\u0434\u0451\u0442 67 \u0441\u0442\u0440\u043e\u043a\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430.<\/p>\n<p>  <code>00 13 00 00 00 16 00 02 00 00 00 05 00 1C 00 1D 00 00 00 00 00 05 00 4A 00 3F 00 01<\/code> \u2013 \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f. \u0412\u0438\u0434\u0438\u043c\u043e, \u0434\u0440\u0443\u0433\u043e\u0439 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442. JBE \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e \u044d\u0442\u043e\u043c\u0443 \u0438\u043d\u0434\u0435\u043a\u0441\u0443 \u0432 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u043e\u043c\u0443 \u043f\u0443\u043b\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0432\u0443\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0430 \u00abLocalVariableTable\u00bb. \u0422\u043e\u0436\u0435 \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a\u0430, \u0434\u043b\u044f \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445. \u0418 \u043d\u0430 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.7.13\" rel=\"nofollow noopener noreferrer\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f<\/a>:   <\/p>\n<pre><code class=\"plaintext\">LocalVariableTable_attribute {     u2 attribute_name_index;     u4 attribute_length;     u2 local_variable_table_length;     {   u2 start_pc;         u2 length;         u2 name_index;         u2 descriptor_index;         u2 index;     } local_variable_table[local_variable_table_length]; } <\/code><\/pre>\n<p>  <code>00 13<\/code> \u2013 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u00abLocalVariableTable\u00bb,<br \/>  <code>00 00 00 16<\/code> \u2013 \u0434\u043b\u0438\u043d\u043d\u044b\u0439, \u0446\u0435\u043b\u044b\u0445 22 \u0431\u0430\u0439\u0442\u0430,<br \/>  <code>00 02<\/code> \u2013 \u0438 \u0434\u0432\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u0447\u0442\u043e \u043a\u043e\u0440\u0440\u0435\u043b\u0438\u0440\u0443\u0435\u0442 \u0441 <code>max_locals<\/code>,<br \/>  \u2003<code>00 00<\/code> \u2013 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u043e\u0442 <code>start_pc<\/code>,<br \/>  \u2003<code>00 05<\/code> \u2013 \u0438 \u0434\u043e <code>start_pc<\/code> + <code>length<\/code>,<br \/>  \u2003<code>00 1C<\/code> \u2013 \u0438\u043c\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439. JBE \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u044d\u0442\u043e <code>this<\/code><br \/>  \u2003<code>00 1D<\/code> \u2013 \u0442\u0438\u043f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439. <code>Lorg\/dbunit\/ext\/postgresql\/UuidType;<\/code><br \/>  \u2003<code>00 00<\/code> \u2013 \u0438\u043d\u0434\u0435\u043a\u0441 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u0444\u0440\u0435\u0439\u043c\u0435. \u041d\u0430\u043a\u043e\u043d\u0435\u0446-\u0442\u043e \u043e\u043d \u0431\u044b\u043b \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442.<\/p>\n<p>  \u2003<code>00 00<\/code> \u2013 \u0442\u0435 \u0436\u0435 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0432\u0438\u0434\u0438\u043c\u043e\u0441\u0442\u0438,<br \/>  \u2003<code>00 05<\/code>,<br \/>  \u2003<code>00 4A<\/code> \u2013 \u043d\u043e \u0434\u0440\u0443\u0433\u043e\u0435 \u0438\u043c\u044f: <code>arg0<\/code><br \/>  \u2003<code>00 3F<\/code> \u2013 \u0438 \u0442\u0438\u043f: <code>Ljava\/lang\/Object;<\/code><br \/>  \u2003<code>00 01<\/code> \u2013 \u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\u044b\u0439 \u043d\u043e\u043c\u0435\u0440 \u0432\u043e \u0444\u0440\u0435\u0439\u043c\u0435.<\/p>\n<p>  \u0418 \u043d\u0430 \u044d\u0442\u043e\u043c \u0432\u0441\u044f \u0433\u0440\u043e\u043c\u043e\u0437\u0434\u043a\u0430\u044f \u0441\u0435\u043a\u0446\u0438\u044f \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430 \u00abCode\u00bb \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0430\u0441\u044c. \u041d\u043e \u0433\u0434\u0435 \u0436\u0435 \u00abStackMapTable\u00bb?!<br \/>  \u042f \u043e\u0436\u0438\u0434\u0430\u043b, \u0447\u0442\u043e \u0443 \u043c\u0435\u0442\u043e\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u043a\u043e\u0434\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0444\u0440\u0435\u0439\u043c\u043e\u0432:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/sj\/ra\/jm\/sjrajm_o4lryzh9encfpkouhtoc.png\" alt=\"doc_locations.png\"><\/p>\n<p>  \u041d\u043e, \u043f\u043e\u0445\u043e\u0436\u0435, \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u0447\u0438\u0442\u0430\u043b \u043f\u043e \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u0438, \u0438 \u0441\u0430\u043c \u044d\u0442\u043e\u0442 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u043f\u043e\u0437\u0436\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445, \u043e\u043d \u0431\u044b\u043b \u0441\u043c\u0435\u0449\u0451\u043d \u0432 \u043a\u043e\u043d\u0435\u0446 <code>.class<\/code>-\u0444\u0430\u0439\u043b\u0430. (\u042d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a, \u0435\u0441\u043b\u0438 \u0447\u0442\u043e.) \u0418\u0449\u0435\u043c \u0438 \u043d\u0430\u0445\u043e\u0434\u0438\u043c <code>00 91<\/code>:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/id\/nu\/it\/idnuitknanhihpbaaqp4i9sd5pk.png\" alt=\"hxd_framemap.png\"><br \/>  <code>00 91 00 00 00 29 00 06 FF 00 6F 00 04 07 00 01 07 00 45 07 00 92 07 00 45 00 01 07 00 76 4D 07 00 78 4D 07 00 7A 4D 07 00 7C 4D 07 00 7E 0D<\/code><\/p>\n<p>  \u041d\u043e \u043e\u043d \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0446\u0435 \u0444\u0430\u0439\u043b\u0430, \u043f\u043e\u0434 \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0433\u0440\u043e\u043c\u043e\u0437\u0434\u043a\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 <code>getUUID<\/code>, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f\u0432\u043d\u043e \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0442\u043d\u0441\u0438\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u0439. \u0418 \u0434\u0430, JBE \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u0430\u0442\u0442\u0440\u0438\u0431\u0443 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043d\u0435 \u043a \u043d\u0430\u0448\u0435\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0430 \u043a \u0431\u043e\u043b\u044c\u0448\u043e\u0439:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/cv\/rm\/bj\/cvrmbjnqqczwwqivr6jhrcoppbi.png\" alt=\"jbe_framemap.png\"><\/p>\n<p>  \u0417\u0430 \u0447\u0435\u043c \u0436\u0435 \u043c\u044b \u0442\u043e\u0433\u0434\u0430 \u0432\u0441\u0451 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u0433\u043e\u043d\u044f\u043b\u0438\u0441\u044c?..<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0447\u0443\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u0435\u0435 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.7.4\" rel=\"nofollow noopener noreferrer\">\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e<\/a>, \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443, \u0433\u043e\u0432\u043e\u0440\u044f\u0449\u0443\u044e, \u0447\u0442\u043e \u043f\u0435\u0440\u0432\u044b\u0439 \u0444\u0440\u0435\u0439\u043c \u0441\u043e\u0437\u0434\u0430\u0451\u0442\u0441\u044f \u043d\u0435\u044f\u0432\u043d\u043e, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043c\u0435\u0442\u043e\u0434\u0430: \u00abEach stack map frame described in the entries table relies on the previous frame for some of its semantics. The first stack map frame of a method is implicit, and computed from the method descriptor by the type checker (\u00a74.10.1.6). The stack_map_frame structure at entries[0] therefore describes the second stack map frame of the method.\u00bb \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 JVM \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u043c\u043e\u0449\u044c \u0434\u043b\u044f \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0430.<\/p>\n<p>  \u0411\u044b\u043b\u0430 \u044d\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u043d\u0430\u043f\u0440\u0430\u0441\u043d\u0430? \u041d\u0435\u0442, \u044f \u0447\u0443\u0442\u044c \u043b\u0443\u0447\u0448\u0435 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b\u0441\u044f, \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d <code>.class<\/code>-\u0444\u0430\u0439\u043b, \u0438 \u043f\u043e\u043d\u044f\u043b, \u0432 \u043a\u0430\u043a\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u0441\u0442\u043e\u0438\u0442 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f. \u0412\u043f\u043e\u043b\u043d\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0447\u0442\u043e \u0443 \u0432\u0435\u0440\u0441\u0438\u0438 \u0441 \u0442\u0435\u0440\u043d\u0430\u0440\u043d\u044b\u043c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u043c \u0431\u0443\u0434\u0443\u0442 \u043c\u0435\u043d\u0435\u0435 \u0442\u0440\u0438\u0432\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0434\u043b\u044f JVM \u0444\u0440\u0435\u0439\u043c\u044b, \u0438 \u0442\u0430\u043c \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0441\u043b\u043e\u0432\u0443\u0442\u044b\u0439 \u00abStackMapTable\u00bb.<\/p>\n<p>  \u0427\u0442\u043e \u0436, \u0434\u0430\u0431\u044b \u043d\u0435 \u0440\u0430\u0437\u0434\u0443\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0441\u0442\u0430\u0442\u044c\u044e \u0431\u0435\u0441\u043f\u043e\u043b\u0435\u0437\u043d\u044b\u043c\u0438 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0430\u043c\u0438 \u043a\u0430\u043a\u043e\u0433\u043e-\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u044f \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u043f\u0440\u043e\u0434\u0435\u043b\u0430\u044e \u044d\u0442\u0443 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432 \u0444\u043e\u043d\u0435 \u0438 \u043e\u0441\u0442\u0430\u0432\u043b\u044e \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0436\u043d\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b.<\/p>\n<p>  \u0412\u043e\u0442 \u0432\u0441\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0432 \u043f\u0443\u043b\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442, \u0438 \u0432\u0434\u043e\u0431\u0430\u0432\u043e\u043a \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0443 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0432\u0441\u0451-\u0442\u0430\u043a\u0438 \u0435\u0441\u0442\u044c \u00abStackMapTable\u00bb:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/9r\/1a\/j8\/9r1aj8izkzr0nj-6zl_ytyaqcxg.png\" alt=\"jbe_donor_pool.png\"><\/p>\n<p>  \u041d\u0430\u043c \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e \u043f\u0440\u0438\u0433\u043e\u0434\u044f\u0442\u0441\u044f \u0448\u0435\u0441\u0442\u043d\u0430\u0434\u0446\u0430\u0442\u0435\u0440\u0438\u0447\u043d\u044b\u0435 \u0438\u043d\u0434\u0435\u043a\u0441\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u0442\u0440\u043e\u043a:<br \/>  <code>13<\/code> \u2013 \u0438\u043c\u044f \u043c\u0435\u0442\u043e\u0434\u0430 <code>modified<\/code>, \u044c\u0430\u0439\u0442-\u043a\u043e\u0434\u043e\u043c \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c <code>typeCast<\/code>,<br \/>  <code>0D<\/code> \u2013 \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u0430 \u043e\u0431\u043e\u0438\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043c\u0435\u0442\u043e\u0434\u0430,<br \/>  <code>10<\/code> \u2013 \u00abExceptions\u00bb \u2013 \u043d\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043d\u0430\u0434\u043e, \u043d\u043e \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0437\u043d\u0430\u0442\u044c, \u0447\u0442\u043e \u0437\u0430 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u043c\u044b \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u043c,<br \/>  <code>07<\/code> \u2013 \u00abCode\u00bb \u2013 \u0447\u0442\u043e \u043d\u0430\u0434\u043e,<br \/>  <code>08<\/code> \u2013 \u00abLineNumberTable\u00bb, \u043d\u0435 \u043e\u0441\u043e\u0431\u043e \u043d\u0430\u0434\u043e, \u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0433\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0444\u0440\u0435\u0439\u043c\u0430,<br \/>  <code>09<\/code> \u2013 \u00abLocalVariableTable\u00bb, \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e,<br \/>  <code>14<\/code> \u2013 \u00abStackMapTable\u00bb, \u0435\u043c\u0443 \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u0435\u043b\u0435\u043d\u043e \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435.<br \/>  \u041f\u043e \u0445\u043e\u0434\u0443 \u043f\u0440\u0438\u0433\u043e\u0434\u044f\u0442\u0441\u044f \u0438 \u0434\u0440\u0443\u0433\u0438\u0435, \u043d\u043e \u043e\u043d\u0438 \u043c\u0435\u043d\u0435\u0435 \u0437\u043d\u0430\u0447\u0438\u043c\u044b.<\/p>\n<p>  \u0418\u0449\u0435\u043c, \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0438 \u043f\u0430\u0440\u0441\u0438\u043c \u043d\u0435\u0447\u0442\u043e, \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0435\u0435\u0441\u044f \u0441 <code>00 01 00 13 00 0D<\/code>:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/g4\/zw\/wa\/g4zwwapw0xmihcfru8bp80x2pdi.png\" alt=\"hxd_modified.png\"><\/p>\n<p>  <code>00 01<\/code> \u2013 <code>public<\/code>,<br \/>  <code>00 13<\/code> \u2013 <code>modified<\/code><br \/>  <code>00 0D<\/code> \u2013 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 <code>Object<\/code>,<br \/>  <code>00 03<\/code> \u2013 \u0443 \u044d\u0442\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0435\u0441\u0442\u044c \u0442\u0440\u0438 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430:<\/p>\n<p>  <code>00 07<\/code> \u2013 \u043f\u0435\u0440\u0432\u044b\u0439 \u2013 \u00abCode\u00bb,<br \/>  <code>00 00 00 4E<\/code> \u2013 \u0434\u043b\u0438\u043d\u043e\u0439 78 + 6 \u0431\u0430\u0439\u0442<br \/>  <code>00 01<\/code> \u2013 \u0433\u043b\u0443\u0431\u0438\u043d\u043e\u0439 \u0441\u0442\u0435\u043a\u0430 1 \u0438\u043d\u0442,<br \/>  <code>00 02<\/code> \u2013 \u0438 \u043e \u0434\u0432\u0443\u0445 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445,<br \/>  <code>00 00 00 0D<\/code> \u2013 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 13 \u0431\u0430\u0439\u0442 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439,<br \/>  <code>2B C7 00 07 01 A7 00 07 2B B6 00 02 B0<\/code> \u2013 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u043e \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u0443\u0434\u0435\u0442 \u0434\u0430\u043b\u044c\u0448\u0435,<br \/>  <code>00 00<\/code> \u2013 \u043d\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439,<br \/>  <code>00 03<\/code> \u2013 \u0438 \u0438\u043c\u0435\u0435\u0442 \u0442\u0440\u0438 \u0441\u0443\u0431\u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430:<\/p>\n<p>  \u2003<code>00 08<\/code> \u2013 \u043f\u0435\u0440\u0432\u044b\u0439-\u043f\u0435\u0440\u0432\u044b\u0439 \u00abLineNumberTable\u00bb,<br \/>  \u2003<code>00 00 00 06<\/code> \u2013 \u043e \u0448\u0435\u0441\u0442\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0431\u0430\u0439\u0442\u0430\u0445,<br \/>  \u2003<code>00 01<\/code> \u2013 \u0441 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439,<br \/>  \u2003<code>00 00<\/code> \u2013 \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u043d\u0443\u043b\u0435\u0432\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438,<br \/>  \u2003<code>00 0A<\/code> \u2013 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f 10 \u0441\u0442\u0440\u043e\u043a\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430,<\/p>\n<p>  \u2003<code>00 09<\/code> \u2013 \u043f\u0435\u0440\u0432\u044b\u0439-\u0432\u0442\u043e\u0440\u043e\u0439 \u00abLocalVariableTable\u00bb,<br \/>  \u2003<code>00 00 00 16<\/code> \u2013 \u043e \u0434\u0432\u0430\u0434\u0446\u0430\u0442\u0438 \u0434\u0432\u0443\u0445 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0431\u0430\u0439\u0442\u0430\u0445,<br \/>  \u2003<code>00 02<\/code> \u2013 \u0441 \u0434\u0432\u0443\u043c\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c\u0438,<\/p>\n<p>  \u2003\u2003<code>00 00<\/code> \u2013 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0435\u0439\u0441\u044f \u0441 \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0435\u043a\u0446\u0438\u0438 \u043a\u043e\u0434\u0430,<br \/>  \u2003\u2003<code>00 0D<\/code> \u2013 \u0438 \u0438\u0434\u0443\u0449\u0435\u0439 13 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u0442\u043e \u0435\u0441\u0442\u044c \u0434\u043e \u043a\u043e\u043d\u0446\u0430,<br \/>  \u2003\u2003<code>00 0A<\/code> \u2013 \u043f\u043e \u0438\u043c\u0435\u043d\u0438 #10, <code>this<\/code>,<br \/>  \u2003\u2003<code>00 0B<\/code> \u2013 \u0441 \u0442\u0438\u043f\u043e\u043c #11, <code>Lcom\/xobotun\/habr\/Tmp;<\/code>,<br \/>  \u2003\u2003<code>00 00<\/code> \u2013 \u0441 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\u044b\u043c \u043d\u043e\u043c\u0435\u0440\u043e\u043c \u043d\u043e\u043b\u044c \u0432 \u044d\u0442\u043e\u043c \u0444\u0440\u0435\u0439\u043c\u0435,<\/p>\n<p>  \u2003\u2003<code>00 00<\/code> \u2013 \u0434\u0440\u0443\u0433\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439,<br \/>  \u2003\u2003<code>00 0D<\/code> \u2013 \u0441 \u0442\u0435\u043c \u0436\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u0436\u0438\u0437\u043d\u0438,<br \/>  \u2003\u2003<code>00 0E<\/code> \u2013 \u043f\u043e \u0438\u043c\u0435\u043d\u0438 #14, <code>arg0<\/code>,<br \/>  \u2003\u2003<code>00 0F<\/code> \u2013 \u0441 \u0442\u0438\u043f\u043e\u043c #15, <code>Ljava\/lang\/Object;<\/code>,<br \/>  \u2003\u2003<code>00 01<\/code> \u2013 \u0441 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\u044b\u043c \u043d\u043e\u043c\u0435\u0440\u043e\u043c \u043e\u0434\u0438\u043d \u0432 \u044d\u0442\u043e\u043c \u0444\u0440\u0435\u0439\u043c\u0435,<\/p>\n<p>  \u2003<code>00 14<\/code> \u2013 \u0434\u043e\u043b\u0433\u043e\u0436\u0434\u0430\u043d\u043d\u044b\u0439 \u00abStackMapTable\u00bb. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043c\u044b \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c \u0435\u0433\u043e \u0432 \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0437, \u0441\u0442\u043e\u0438\u0442 \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u0431\u043e\u043b\u0435\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u043c\u0443 \u0441\u0442\u0438\u043b\u044e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f. \u0422\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u043f\u043e\u043b\u0435 <code>attribute_name_index<\/code>,<br \/>  \u2003<code>00 00 00 07<\/code> \u2013 <code>attribute_length<\/code> \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e\u0442 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u043c\u0438 \u0431\u0430\u0439\u0442\u0430\u0445 \u0441\u0432\u0435\u0440\u0445 \u044d\u0442\u0438\u0445 \u0448\u0435\u0441\u0442\u0438,<br \/>  \u2003<code>00 02<\/code> \u2013 <code>number_of_entries<\/code> \u0440\u0430\u043f\u043e\u0440\u0442\u0443\u0435\u0442 \u043e \u0434\u0432\u0443\u0445 <code>stack_map_frame<\/code> \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0445 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430:<\/p>\n<p>  \u2003\u2003<code>08<\/code> \u2013 \u0432\u0442\u043e\u0440\u043e\u0439 \u0444\u0440\u0435\u0439\u043c, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438. \u0424\u0440\u0435\u0439\u043c\u044b \u0442\u0438\u043f\u0430 <code>SAME_FRAME<\/code> \u043b\u0435\u0436\u0430\u0442 \u0432 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0435 [0, 63], \u0438 \u044d\u0442\u043e\u0442 \u0438\u043c\u0435\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0440 \u0432 8 \u0431\u0430\u0439\u0442\u043e\u0432 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438. \u041e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u043d\u043e\u0441\u0442\u044c \u0441\u0442\u0435\u043a\u0430, \u0447\u0442\u043e \u043e\u043d \u043d\u0435 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u044b\u0436\u043a\u0430,<br \/>  \u2003\u2003<code>43<\/code> \u2013 \u0442\u0440\u0435\u0442\u0438\u0439 \u0444\u0440\u0435\u0439\u043c. \u041b\u0435\u0436\u0438\u0442 \u0432 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0435 [64, 127] \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0435\u0433\u043e \u0442\u0438\u043f \u2013 <code>SAME_LOCALS_1_STACK_ITEM<\/code>. \u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 67-64=3 \u0431\u0430\u0439\u0442\u0430. \u041e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u0440\u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u043d\u0438\u0438 \u0432 \u044d\u0442\u043e\u0442 \u0444\u0440\u0435\u0439\u043c, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043e\u0434\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0441\u0442\u0435\u043a\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043e\u043d \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443-\u043e\u0431\u044a\u0435\u043a\u0434\u0438\u043d\u0435\u043d\u0438\u0435 <code>verification_type_info<\/code>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u0430\u043a:<br \/>  \u2003\u2003<code>07<\/code> \u2013 <code>tag<\/code> \u2013 \u0442\u0438\u043f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 <code>ITEM_Object<\/code>, \u0437\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043f\u0443\u043b\u0430 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442:<br \/>  \u2003\u2003<code>00 04<\/code> \u2013 <code>cpool_index<\/code> \u2013 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 <code>class_info<\/code>, \u0441\u0441\u044b\u043b\u0430\u044e\u0449\u0430\u044f\u0441\u044f \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 #26 <code>java\/lang\/Object<\/code>. \u0422\u043e \u0435\u0441\u0442\u044c \u043f\u0440\u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u043d\u0438\u0438 \u0432 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u044d\u0442\u043e\u0442 \u0444\u0440\u0435\u0439\u043c JVM \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0442\u043e \u0441\u0432\u0435\u0440\u0445\u0443 \u043d\u0430 \u0441\u0442\u0435\u043a\u0435 \u043b\u0435\u0436\u0438\u0442 \u043e\u0431\u044a\u0435\u043a\u0442, \u0438 \u043e\u043d \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0441\u0430\u043c\u043e\u043c\u0443 \u043e\u0431\u0449\u0435\u043c\u0443 \u0442\u0438\u043f\u0443 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432.<\/p>\n<p>  \u2003<code>00 10<\/code> \u2013 \u0432\u0442\u043e\u0440\u043e\u0439 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 \u043d\u0430\u0448\u0435\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430, \u00abExceptions\u00bb, \u043d\u043e \u043c\u044b \u0435\u0433\u043e \u0443\u0436\u0435 \u0432\u0438\u0434\u0435\u043b\u0438, \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e,<br \/>  \u2003<code>00 00 00 04<\/code> \u2013 \u0434\u043b\u0438\u043d\u043e\u0439 \u0447\u0435\u0442\u044b\u0440\u0435 \u0431\u0430\u0439\u0442\u0430 \u0438 \u0448\u0435\u0441\u0442\u044c \u0431\u0430\u0439\u0442 \u0448\u0430\u043f\u043a\u0438,<br \/>  \u2003<code>00 01<\/code> \u2013 \u043e\u0434\u043d\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435,<br \/>  \u2003<code>00 11<\/code> \u2013 \u0442\u0438\u043f\u0430 <code>java\/lang\/RuntimeException<\/code>, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043c\u044b \u0435\u0433\u043e \u044f\u0432\u043d\u043e \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0438,<\/p>\n<p>  \u2003<code>00 12<\/code> \u2013 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442 &quot;<a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.7.24\" rel=\"nofollow noopener noreferrer\">MethodParameters<\/a>&quot;, \u0442\u0430\u043a\u043e\u0433\u043e \u0435\u0449\u0451 \u043d\u0435 \u0431\u044b\u043b\u043e. (\u0411\u044b\u043b, \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0432 \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u0440\u0430\u0437 \u0434\u043e \u043d\u0435\u0433\u043e \u043d\u0435 \u0434\u043e\u0448\u043b\u0438. &gt;_&lt;) \u0412 \u043d\u0451\u043c \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0438\u043c\u0435\u043d\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043c\u0435\u0442\u043e\u0434\u0430 \u0438 \u0444\u043b\u0430\u0433\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <code>final<\/code>,<br \/>  \u2003<code>00 00 00 05<\/code> \u2013 \u0434\u043b\u0438\u043d\u043e\u0439 \u043b\u0438\u0448\u043d\u0438\u0445 \u043f\u044f\u0442\u044c \u0431\u0430\u0439\u0442,<br \/>  \u2003<code>01<\/code> \u2013 \u043e\u0434\u0438\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440,<br \/>  \u2003<code>00 0E<\/code> \u2013 \u043f\u043e \u0438\u043c\u0435\u043d\u0438 <code>arg0<\/code>,<br \/>  \u2003<code>00 00<\/code> \u2013 \u0431\u0435\u0437 \u043e\u0441\u043e\u0431\u044b\u0445 \u0444\u043b\u0430\u0433\u043e\u0432.<\/p>\n<p>  \u041d\u0430 \u044d\u0442\u043e\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c, \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u0441\u0430\u043c\u0438\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u0445. \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u044d\u0442\u043e \u043a\u0443\u0434\u0430 \u043c\u0435\u043d\u0435\u0435 \u0443\u0432\u043b\u0435\u043a\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0435\u043c \u0440\u0430\u0441\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u0442\u044c \u043d\u0435\u0447\u0438\u0442\u0430\u043c\u044b\u0439 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a \u043d\u0430 \u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0435 \u0431\u043b\u043e\u043a\u0438. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0432\u0437\u044f\u0442\u044c <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-6.html\" rel=\"nofollow noopener noreferrer\">\u0434\u0440\u0443\u0433\u043e\u0439 \u0442\u043e\u043c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a> \u0438 \u043d\u0430\u0439\u0442\u0438 \u043f\u043e <code>Ctrl+F<\/code> \u0432 \u043d\u0451\u043c \u0432\u0441\u0435 \u044d\u0442\u0438 \u0431\u0430\u0439\u0442\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439.<\/p>\n<p>  \u0427\u0442\u043e \u0436\u0435, \u0442\u0435\u043b\u043e \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 <code>2B B6 00 44 B0<\/code>:<br \/>  1. <code>aload_1 = 43 (0x2b)<\/code>. \u0421\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0438\u0437 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u21161 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0444\u0440\u0435\u0439\u043c\u0430. \u0412 \u044f\u0432\u043d\u043e\u043c \u0432\u0438\u0434\u0435 \u043c\u044b \u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0448\u043b\u0438, \u043d\u043e \u0432 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0435 \u00abLocalVariableTable\u00bb \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0441 \u044d\u0442\u0438\u043c \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u043c \u0431\u044b\u043b\u0430 <code>arg0<\/code>. \u0421\u0447\u0438\u0442\u0430\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0443\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u0441\u0442\u0435\u043a.<br \/>  2. <code>invokevirtual = 182 (0xb6)<\/code>. \u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u043a \u043e\u0431\u044a\u0435\u043a\u0442\u0443 \u043d\u0430 \u0441\u0442\u0435\u043a\u0435. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 \u043f\u0443\u043b\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442. \u0417\u0434\u0435\u0441\u044c <code>00 44<\/code> \u2013 <code>[068] Methodref_info<\/code>. \u041f\u0440\u043e\u0441\u0442\u0438\u0442\u0435, \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043d\u0430 69 \u0438 71, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0442\u043e\u0436\u0435 \u043d\u0435 \u0441\u0442\u0440\u043e\u043a\u0438: <code>[069] Class_info<\/code> \u0438 <code>[071] NameAndType_info<\/code>. \u0410 \u0432\u043e\u0442 69 \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u0443\u0436\u0435 \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 <code>[070] Utf8_info: java\/lang\/Object<\/code>, 71 \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0438 <code>[072] Utf8_info: toString<\/code> \u0438 <code>[073] Utf8_info: ()Ljava\/lang\/String;<\/code>. \u0412\u0441\u0451 \u0436\u0435 stringly-typed \u044f\u0437\u044b\u043a.<br \/>  3. <code>areturn = 176 (0xb0)<\/code>. \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u043e \u0441\u0442\u0435\u043a\u0430.<\/p>\n<p>  \u0418 \u0442\u0435\u043b\u043e \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e <code>2B C7 00 07 01 A7 00 07 2B B6 00 02 B0<\/code>:<br \/>  1. <code>aload_1 = 43 (0x2b)<\/code>, \u0442\u043e \u0436\u0435 \u043d\u0430\u0447\u0430\u043b\u043e.<br \/>  2. <code>ifnonnull = 199 (0xc7)<\/code>. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u0432\u0435\u0440\u0448\u0438\u043d\u0443 \u0441\u0442\u0435\u043a\u0430 \u043d\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 <code>null<\/code>, \u0438 \u0435\u0441\u043b\u0438 \u0442\u0430\u043c \u043b\u0435\u0436\u0438\u0442 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442, \u043f\u0440\u044b\u0433\u0430\u0435\u0442 \u043d\u0430 <code>00 07<\/code> \u0431\u0430\u0439\u0442 \u0432\u043f\u0435\u0440\u0451\u0434 \u043e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u044d\u0442\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u0442\u043e \u0435\u0441\u0442\u044c \u043d\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e 5.<br \/>  3. <code>aconst_null = 1 (0x1)<\/code>. \u041f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442 null \u043d\u0430 \u0432\u0435\u0440\u0448\u0438\u043d\u0443 \u0441\u0442\u0435\u043a\u0430.<br \/>  4. <code>goto = 167 (0xa7)<\/code>. \u041f\u0440\u044b\u0433\u0430\u0435\u0442 \u043d\u0430 <code>00 07<\/code> \u0431\u0430\u0439\u0442 \u0432\u043f\u0435\u0440\u0451\u0434 \u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 7.<br \/>  5. <code>aload_1 = 43 (0x2b)<\/code>. \u041f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0435 \u0447\u0442\u0435\u043d\u0438\u0435, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 <code>ifnonnull<\/code> \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0443\u043d\u0438\u0447\u0442\u043e\u0436\u0438\u043b \u0432\u0435\u0440\u0448\u0438\u043d\u0443 \u0441\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438.<br \/>  6. <code>invokevirtual = 182 (0xb6)<\/code>. \u0422\u043e \u0436\u0435 \u0441\u0430\u043c\u043e\u0435, \u0447\u0442\u043e \u0438 \u0432 \u0437\u0430\u043c\u0435\u043d\u044f\u043c\u043e\u043c \u043c\u0435\u0442\u043e\u0434\u0435, \u0442\u043e\u043b\u044c\u043a\u043e <code>Methodref_info: java\/lang\/Object\/toString()Ljava\/lang\/String;<\/code> \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u043e \u0438\u043d\u0434\u0435\u043a\u0441\u0443 <code>00 02<\/code> \u0432 \u043f\u0443\u043b\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442.<br \/>  7. <code>areturn = 176 (0xb0)<\/code>. La Fin.<\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043a\u0430\u0441\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u00abStackMapTable\u00bb. \u0412 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u043c\u0435\u0442\u043e\u0434\u0435 \u0435\u0433\u043e \u043d\u0435 \u0431\u044b\u043b\u043e \u0432 \u044f\u0432\u043d\u043e\u043c \u0432\u0438\u0434\u0435, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0431\u044b\u043b\u0430 \u043b\u0438\u043d\u0435\u0439\u043d\u0430, \u043d\u043e \u0432 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u043c\u043e\u043c \u043c\u0435\u0442\u043e\u0434\u0435 \u0435\u0441\u0442\u044c \u0446\u0435\u043b\u044b\u0445 \u0434\u0432\u0430 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430. \u041c\u043d\u0435 \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043f\u0440\u043e\u0449\u0435 \u043d\u0430\u0447\u0430\u0442\u044c \u0441 \u043a\u043e\u043d\u0446\u0430, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043f\u0435\u0440\u0432\u044b\u0439 \u0444\u0440\u0435\u0439\u043c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u043d\u0430\u0447\u0430\u043b\u0430 \u0438 \u0434\u043b\u0438\u0442\u0441\u044f \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u043b\u0451\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0431\u0430\u0439\u0442. \u0412\u043e\u0437\u0438\u043e\u0436\u043d\u043e, \u0447\u0442\u043e \u0434\u043e \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u0440\u044b\u0436\u043a\u0430, \u043d\u043e \u044f \u043d\u0435 \u0443\u0432\u0435\u0440\u0435\u043d. \u0417\u0430\u0447\u0435\u043c \u0433\u0430\u0434\u0430\u0442\u044c, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0442\u043e\u0447\u043d\u043e \u0437\u043d\u0430\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0432\u0441\u0435\u0445 \u0444\u0440\u0435\u0439\u043c\u043e\u0432, \u0438 \u0447\u0442\u043e \u043e\u043d\u0438 \u0438\u0434\u0443\u0442 \u0434\u0440\u0443\u0433 \u0437\u0430 \u0434\u0440\u0443\u0433\u043e\u043c?<\/p>\n<p>  \u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u044f \u043d\u0435 \u043f\u043e\u043d\u044f\u043b, \u043a\u0430\u043a \u0442\u0440\u0430\u043a\u0442\u043e\u0432\u0430\u0442\u044c, \u0442\u0430\u043a \u044d\u0442\u043e \u0444\u0440\u0430\u0437\u0443 \u0438\u0437 <a href=\"https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/html\/jvms-4.html#jvms-4.7.24\" rel=\"nofollow noopener noreferrer\">\u043f\u0443\u043d\u043a\u0442\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e \u043a <code>offset_delta<\/code> \u0444\u0440\u0435\u0439\u043c\u0430, \u043a\u043e\u0441\u0432\u0435\u043d\u043d\u043e \u043b\u0435\u0436\u0430\u0449\u0443\u044e \u0432 \u043f\u043e\u043b\u0435 <code>tag<\/code>, \u043d\u0430\u0434\u043e \u043f\u0440\u0438\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0435\u0434\u0438\u043d\u0438\u0446\u0443 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0444\u0440\u0435\u0439\u043c\u043e\u0432, \u043a\u0440\u043e\u043c\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0433\u043e.<\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0444\u0440\u0435\u0439\u043c \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0442\u0440\u0438 \u043f\u043b\u044e\u0441 \u043e\u0434\u0438\u043d \u0431\u0430\u0439\u0442 \u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0447\u0442\u043e \u043d\u0430 \u0441\u0442\u0435\u043a\u0435 \u0435\u0441\u0442\u044c <code>Object<\/code>. \u042d\u0442\u043e \u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044d\u0442\u043e\u0442 <code>Object<\/code> \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u043b\u0438\u0431\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c, \u043b\u0438\u0431\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 \u043d\u0451\u043c <code>toString<\/code>, \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043c\u044b \u0432 \u044d\u0442\u043e\u0442 \u0444\u0440\u0435\u0439\u043c \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c.<\/p>\n<p>  \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u0444\u0440\u0435\u0439\u043c \u0437\u0430\u043d\u0438\u043c\u0430\u043b \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u0431\u0430\u0439\u0442\u0430 \u0438\u0437 \u0442\u0440\u0438\u043d\u0430\u0434\u0446\u0430\u0442\u0438, \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0434\u0435\u0432\u044f\u0442\u044c. \u0415\u0441\u043b\u0438 \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u0443, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u0444\u0440\u0435\u0439\u043c \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c, \u043a \u0435\u0433\u043e \u0432\u043e\u0441\u044c\u043c\u0438 \u0431\u0430\u0439\u0442\u0430\u043c \u0442\u043e\u0436\u0435 \u043d\u0430\u0434\u043e \u043f\u0440\u0438\u0431\u0430\u0432\u0438\u0442\u044c \u043e\u0434\u0438\u043d. \u0418 \u043e\u043d \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0434\u0435\u0432\u044f\u0442\u044c \u0431\u0430\u0439\u0442 \u0438 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u043a.<\/p>\n<p>  \u0417\u043d\u0430\u0447\u0438\u0442 \u043b\u0438 \u044d\u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u0444\u0440\u0435\u0439\u043c \u0441 \u043f\u0443\u0441\u0442\u044b\u043c \u0441\u0442\u0435\u043a\u043e\u043c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u0435\u043d \u043d\u043e\u043b\u044c \u0431\u0430\u0439\u0442, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043f\u0435\u0440\u0432\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u0435\u0433\u043e \u043c\u0435\u043d\u044f\u0435\u0442? \u0418\u043b\u0438 \u0436\u0435 \u044f \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e? \u041f\u0440\u043e\u0448\u0443 \u043a \u044d\u0442\u043e\u043c\u0443 \u043f\u0430\u0440\u0430\u0433\u0440\u0430\u0444\u0443 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u044c\u0441\u044f \u0441 \u0432\u0435\u043b\u0438\u043a\u0438\u043c \u0441\u043e\u043c\u043d\u0435\u043d\u0438\u0435\u043c.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u0432 \u0447\u0451\u043c \u0436\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0440\u0430\u0437\u043d\u0438\u0446\u0430 \u043c\u0435\u0436\u0434\u0443 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438:<br \/>  1. \u0420\u0430\u0437\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432 \u043f\u0443\u043b\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442, \u043d\u0430\u0434\u043e \u043c\u0435\u043d\u044f\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e.<br \/>  1\u0430. \u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u044f \u0438\u0437 \u043f\u0443\u043d\u043a\u0442\u0435 1, \u00abExceptions\u00bb, \u00abLineNumberTable\u00bb \u0438 \u00abLocalVariableTable\u00bb \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b.<br \/>  2. \u0420\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u0432 \u0447\u0451\u043c \u0438 \u0435\u0441\u0442\u044c \u0446\u0435\u043b\u044c.<br \/>  3. \u041f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u00abStackMapTable\u00bb \u0432\u0432\u0438\u0434\u0443 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043f\u0443\u043d\u043a\u0442\u0430.<\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0441\u0451 \u0433\u043e\u0442\u043e\u0432\u043e \u043a \u0445\u0438\u0440\u0443\u0440\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u0432\u043c\u0435\u0448\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0443.<\/p>\n<p>  \u041f\u043b\u0430\u043d \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0442\u0430\u043a\u043e\u0439:<br \/>  1. \u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u043a\u043e\u0434 \u043f\u043e\u0432\u0435\u0440\u0445 \u0441\u0442\u0430\u0440\u043e\u0433\u043e. <code>2B B6 00 44 B0<\/code> \u2192 <code>2B C7 00 07 01 A7 00 07 2B B6 00 02 B0<\/code>.<br \/>  2. \u041f\u043e\u0447\u0438\u043d\u0438\u0442\u044c \u0441\u043b\u043e\u043c\u0430\u043d\u043d\u044b\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043f\u0443\u043b \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442 \u0432 \u0442\u043e\u043c \u0436\u0435 \u043a\u0443\u0441\u043a\u0435 \u043a\u043e\u0434\u0430. \u0422\u0430\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 <code>toString()<\/code>, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u0435\u043d\u044f\u0435\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e <code>B6 00 02<\/code> \u2192 <code>B6 00 44<\/code>.<br \/>  3. \u041f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0434\u043b\u0438\u043d\u0443 \u0441\u0443\u0431\u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0432 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0435 \u043a\u043e\u0434\u0430 \u0441 <code>00 00 00 05<\/code> \u043d\u0430 <code>00 00 00 0D<\/code>.<br \/>  4. \u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u0434\u043b\u0438\u043d\u0443 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430 \u043a\u043e\u0434\u0430 \u043d\u0430 13-5=8 \u0431\u0430\u0439\u0442. <code>00 00 00 39<\/code> \u2192 <code>00 00 00 41<\/code><br \/>  5. \u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u0447\u0438\u0441\u043b\u043e \u0441\u0443\u0431\u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432 \u0432 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0435 \u043a\u043e\u0434\u0430 \u043d\u0430 1. <code>00 02<\/code> \u2192 <code>00 03<\/code><br \/>  6. \u041f\u0440\u0438\u0441\u043e\u0431\u0430\u0447\u0438\u0442\u044c \u00abStackMapTable\u00bb \u0438\u0437\u043e\u043b\u0435\u043d\u0442\u043e\u0439 \u0432 \u043a\u043e\u043d\u0435\u0446 \u0441\u0435\u043a\u0446\u0438\u0438 \u043a\u043e\u0434\u0430. <code>00 14 00 00 00 07 00 02 08 43 07 00 04<\/code><br \/>  7. \u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u044b \u043f\u0443\u043b\u0430 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442. <code>00 14<\/code> \u2192 <code>00 91<\/code>, <code>00 04<\/code> \u2192 <code>00 45<\/code><br \/>  8. \u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u0434\u043b\u0438\u043d\u0443 \u0430\u0442\u0442\u0440\u0438\u0431\u0443\u0442\u0430 \u043a\u043e\u0434\u0430 \u043d\u0430 13 \u0431\u0430\u0439\u0442. <code>00 00 00 41<\/code> \u2192 <code>00 00 00 4E<\/code><\/p>\n<p>  \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u044d\u0442\u0438\u0445 \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u0439 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<br \/>  <a href=\"https:\/\/habrastorage.org\/webt\/kt\/hg\/k-\/kthgk-rfvslb2eartelctwd7nx4.png\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/kt\/hg\/k-\/kthgk-rfvslb2eartelctwd7nx4.png\" alt=\"hxd_final.png\"><\/a><br \/>  <i>\u041a\u0440\u0430\u0441\u043d\u043e\u0435 \u2013 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0435 \u043a\u0443\u0441\u043a\u0438 \u043a\u043e\u0434\u0430<\/i><\/p>\n<p>  \u0418 \u0418\u0434\u0435\u044f \u0441\u0442\u0430\u043b\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u0435\u0435 \u043e\u0441\u043c\u044b\u0441\u043b\u0435\u043d\u043d\u043e\u0435:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ek\/rj\/yd\/ekrjydqbydcoih3kavvnt4efene.png\" alt=\"idea_bytecode_final.png\"><br \/>  <i>(\u042f \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0432 \u044d\u0442\u043e\u043c \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u044e)<\/i><\/p>\n<p>  \u041d\u043e \u0441\u0430\u043c\u043e\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u2013 \u0442\u0435\u0441\u0442\u044b \u0441\u0442\u0430\u043b\u0438 <b><font color=\"#006000\">\u0437\u0435\u043b\u0451\u043d\u044b\u0435<\/font><\/b>.<\/p>\n<p>  \u0417.\u042b. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043a\u043b\u0438\u043a\u0430\u0431\u0435\u043b\u044c\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u043b\u043a\u0438\u0435 \u043a\u0430\u0440\u0438\u043d\u043a\u0438, \u043a \u043d\u0438\u043c \u043d\u0435\u0442 \u043f\u043e\u0434\u043f\u0438\u0441\u0435\u0439, \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438 \u0447\u0430\u0441\u0442\u0435\u0439, \u0435\u0441\u043b\u0438 \u0442\u0430\u043a\u043e\u0432\u044b\u0435 \u0432\u043e\u043e\u0431\u0449\u0435 \u0435\u0441\u0442\u044c, \u0434\u0430 \u0438 \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0438 \u0432 \u043a\u043e\u0440\u044f\u0432\u043e\u0441\u043e\u0447\u0438\u043d\u0451\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u0445 \u043c\u043e\u0433\u0443\u0442 \u0438\u043c\u0435\u0442\u044c \u043c\u0435\u0441\u0442\u043e \u0431\u044b\u0442\u044c. \u041d\u0435 \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u2013 \u043c\u0438\u043b\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0448\u0443 \u0432 \u043b\u0438\u0447\u043a\u0443. \u041c\u043e\u0436\u0435\u0442, \u0434\u0430\u0436\u0435 \u043f\u043e\u0444\u0438\u043a\u0441\u0438\u043c \u0447\u0442\u043e-\u0442\u043e. \ud83d\ude00<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/552954\/\"> https:\/\/habr.com\/ru\/post\/552954\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\">\u041f\u0440\u0438\u0432\u0435\u0442, \u0445\u0430\u0431\u0440!<\/p>\n<p>  \u0411\u044b\u043b \u0442\u0451\u043f\u043b\u044b\u0439 \u043f\u044f\u0442\u043d\u0438\u0447\u043d\u044b\u0439 \u0432\u0435\u0447\u0435\u0440, \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0441\u043a\u043e\u0440\u0435\u0435 \u0431\u0435\u0436\u0430\u0442\u044c \u0434\u043e\u043c\u043e\u0439, \u043f\u0435\u0440\u0435\u0441\u0435\u0441\u0442\u044c \u0438\u0437 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0433\u043e \u043a\u0440\u0435\u0441\u043b\u0430 \u043d\u0430 \u043a\u0440\u0435\u0441\u043b\u043e \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432 \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u043c\u0435\u0442\u0440\u0430\u0445, \u0430 \u0442\u0435\u0441\u0442\u044b \u0432\u0441\u0451 \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b\u0438. \u041f\u0440\u0438\u0447\u0451\u043c \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b\u0438 \u043e\u043d\u0438 \u0441\u0430\u043c\u044b\u043c \u0438\u0437\u043e\u0449\u0440\u0451\u043d\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: \u043f\u0430\u0434\u0430\u044f \u043f\u0440\u044f\u043c\u043e \u0433\u0434\u0435-\u0442\u043e \u0432 \u043d\u0435\u0434\u0440\u0430\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438.<br \/>  \u0421\u0430\u043c\u043e\u0435 \u043e\u0431\u0438\u0434\u043d\u043e\u0435 \u0431\u044b\u043b\u043e \u0442\u043e, \u0447\u0442\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0431\u0430\u0437\u044b, \u043f\u043e\u0434\u043d\u044f\u0442\u043e\u0439 \u0432 \u0434\u043e\u043a\u0435\u0440\u0435 \u043d\u0430 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u044d\u0442\u0438\u0445 \u043f\u0441\u0435\u0432\u0434\u043e\u0438\u043d\u0442\u0435\u0440\u0433\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0442\u0435\u0441\u0442\u043e\u0432, \u0431\u044b\u043b\u043e \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0435, \u0438 \u0444\u0438\u0447\u0443 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0430 \u0440\u0435\u0432\u044c\u044e \u2013 <code>dbunit<\/code> \u043f\u043e\u0447\u0435\u043c\u0443-\u0442\u043e \u0441\u0447\u0438\u0442\u0430\u043b, \u0447\u0442\u043e \u0443 \u043f\u043e\u0441\u0442\u0433\u0440\u0435\u0441\u0430 \u0432 \u043a\u043e\u043b\u043e\u043d\u043a\u0435 \u0441 \u0442\u0438\u043f\u043e\u043c <code>uuid<\/code> \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c <code>null<\/code>-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0438 \u043f\u0430\u0434\u0430\u043b \u043f\u0440\u0438 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438.<\/p>\n<p>  \u0412\u043e\u0442 \u043a\u0430\u043a-\u0442\u043e \u0442\u0430\u043a:  <\/p>\n<pre><code class=\"plaintext\">java.lang.NullPointerException: null at org.dbunit.ext.postgresql.UuidType.typeCast (UuidType.java:67) at org.dbunit.dataset.datatype.AbstractDataType.compare (AbstractDataType.java:83) at org.dbunit.assertion.comparer.value.IsActualEqualToExpectedValueComparer.isExpected (IsActualEqualToExpectedValueComparer.java:22) ... at java.util.concurrent.FutureTask.run (FutureTask.java:264) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1128) at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:628) at java.lang.Thread.run (Thread.java:834) <\/code><\/pre>\n<p>  \u0427\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0432\u0435\u0440\u0441\u0438\u044f 2.6.0, \u0447\u0442\u043e \u0441\u0430\u043c\u0430\u044f \u043d\u043e\u0432\u0430\u044f 2.7.0 \u2013 \u0443\u0432\u044b.<\/p>\n<p>  \u0412\u0435\u0447\u0435\u0440 \u0431\u044b\u043b \u0442\u0451\u043f\u043b\u044b\u0439, \u043d\u043e\u0443\u0442\u0431\u0443\u043a \u0433\u0440\u0435\u043b\u0441\u044f, \u043d\u043e \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0442\u043e\u0440 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u043b \u0432\u043e \u0438\u043c\u044f \u0442\u0438\u0448\u0438\u043d\u044b \u0438 \u0442\u0440\u043e\u0442\u0442\u043b\u0438\u043b\u0441\u044f \u0434\u043e \u0436\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043c\u043d\u043e\u0433\u0438\u0435 \u0433\u043e\u0434\u044b \u043d\u0430\u0437\u0430\u0434 600 \u041c\u0413\u0446, \u0438 \u0431\u044b\u043b\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439:<\/p>\n<p>  0. <a href=\"https:\/\/sourceforge.net\/p\/dbunit\/bugs\/\" rel=\"nofollow noopener noreferrer\">\u0417\u0430\u0440\u0435\u043f\u043e\u0440\u0442\u0438\u0442\u044c<\/a> \u0431\u0430\u0433 \u0432 dbunit \u0438 \u0436\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u043e\u0439 \u0435\u0433\u043e \u0432\u0435\u0440\u0441\u0438\u0438, \u0435\u0441\u043b\u0438 pull-request \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u0440\u0438\u043c\u0443\u0442.<br \/>  1. \u0417\u0430\u043a\u043e\u0441\u0442\u044b\u043b\u0438\u0442\u044c \u0442\u0435\u0441\u0442\u044b, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0438 \u043d\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u043b\u0438 \u0442\u0435 uuid-\u043a\u043e\u043b\u043e\u043d\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 null, \u0445\u043e\u0442\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u043e \u043e\u043d\u0438 \u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c.<br \/>  2. \u0412\u043e\u043e\u0431\u0449\u0435 \u0443\u0431\u0440\u0430\u0442\u044c \u0442\u0435\u0441\u0442\u044b. \u041a\u0441\u0442\u0430\u0442\u0438, \u043a\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u0438\u0448\u0435\u0442 \u0442\u0435\u0441\u0442\u044b \u043d\u0430 \u0442\u0435\u0441\u0442\u044b?..<br \/>  3. \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c \u0438 \u043d\u044b\u0440\u043d\u0443\u0442\u044c \u0441 \u0433\u043e\u043b\u043e\u0432\u043e\u0439 \u0432 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-321683","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/321683","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=321683"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/321683\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=321683"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=321683"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=321683"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}