{"id":401810,"date":"2024-06-29T16:06:05","date_gmt":"2024-06-29T16:06:05","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=401810"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=401810","title":{"rendered":"<span>\u041f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Java \u0443\u0442\u0438\u043b\u0438\u0442\u044b javap<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>JDK \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441 \u0440\u044f\u0434\u043e\u043c \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0445 \u0443\u0442\u0438\u043b\u0438\u0442, \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 bin.\u00a0\u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u0445\u043e\u0447\u0435\u0442 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0439\u0442-\u043a\u043e\u0434,\u00a0\u043e\u0441\u043e\u0431\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441 <em>\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 <\/em>Java\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u0430 <em>javap<\/em>.<\/p>\n<p>\u0423\u0442\u0438\u043b\u0438\u0442\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438\u00a0<em>javap,<\/em>\u00a0\u0442\u0430\u043a\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u043a\u0430\u043a \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440 \u0444\u0430\u0439\u043b\u043e\u0432 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 Java, \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043b\u044e\u0431\u043e\u043c \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 Java, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0435\u0433\u043e \u043f\u0440\u043e\u0441\u044f\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c.\u00a0\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u043d \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0438\u043c\u0435\u043d\u0430 \u0432\u0441\u0435\u0445 \u043d\u0435\u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0441\u0435:<\/p>\n<pre><code class=\"powershell\">C:\\_tools\\java8\\javap example\\bin>javap com.mcnz.javap.example.CommandTutorial Compiled from \"CommandTutorial.java\" public class com.mcnz.javap.example.CommandTutorial extends java.util.ArrayList&lt;java.lang.Object> { protected static java.lang.String foo; public java.lang.String bar; public com.mcnz.javap.example.CommandTutorial(); void doStuff(); public static void main(java.lang.String[]); public void useInnerType(); }<\/code><\/pre>\n<h4>\u0414\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440 \u0444\u0430\u0439\u043b\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 javap<\/h4>\n<p>\u041f\u043e \u043e\u0431\u0449\u0435\u043c\u0443 \u043f\u0440\u0438\u0437\u043d\u0430\u043d\u0438\u044e, \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0439 \u0432\u044b\u0448\u0435 \u043d\u0435\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0439 \u0432\u044b\u0432\u043e\u0434 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u043e\u0439 <em>javap<\/em>\u00a0\u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u043a\u043b\u0430\u0441\u0441\u0430 <em>CommandTutorial <\/em>\u043d\u0438\u0436\u0435. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u0435\u0441\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0438 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0430.\u00a0\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e JDK \u0443\u0442\u0438\u043b\u0438\u0442\u0430 <em>javap<\/em>\u00a0\u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0442\u043e\u043b\u044c\u043a\u043e\u00a0\u043e \u043f\u043e\u043b\u044f\u0445, \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0445\u0441\u044f\u00a0private, \u0445\u043e\u0442\u044f\u00a0\u0444\u043b\u0430\u0433\u00a0<em>-private<\/em>\u00a0\u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e private \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0445.<\/p>\n<pre><code class=\"java\">package com.mcnz.javap.example; import java.util.ArrayList;  public class CommandTutorial extends ArrayList&lt;Object> {    private static final long serialVersionUID = 1L;   protected static String foo;   public String bar;    void doStuff() { }   private String doStringStuff() { return null; }    public static void main(String args[]) {     class InnerClass {       public String stringStuff() {return \"\";};     }   }    interface InnerType { public void singleMethod(); };    public void useInnerType() {     InnerType innerTypeImpl = () -> System.out.println(\"javap example!\");   } }<\/code><\/pre>\n<h4>\u041f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u044b javap<\/h4>\n<p>\u0412\u044b\u0432\u043e\u0434\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u044b\u00a0<em>javap<\/em>\u00a0\u043f\u043e\u00a0<em>\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e<\/em>\u00a0\u043d\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u00a0<em>\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d<\/em>.\u00a0\u041e\u0434\u043d\u0430\u043a\u043e \u0435\u0441\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0444\u043b\u0430\u0433\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0432\u044b\u0432\u043e\u0434\u0430 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438.\u00a0\u041f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435\u00a0\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438 \u0444\u043b\u0430\u0433\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b\u00a0<em>javap<\/em>\u00a0\u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442:<\/p>\n<ul>\n<li>\n<p><strong><em>-l<\/em><\/strong>\u00a0\u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043a\u043b\u0430\u0441\u0441\u0430<\/p>\n<\/li>\n<li>\n<p><strong><em>-s<\/em><\/strong>\u00a0\u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0442\u0438\u043f\u044b \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u044b \u043a\u043b\u0430\u0441\u0441\u0430<\/p>\n<\/li>\n<li>\n<p><strong><em>-sysinfo<\/em><\/strong>\u00a0\u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442 \u0434\u0430\u0442\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f, \u0445\u0435\u0448 MD5, \u043f\u0443\u0442\u044c \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0435 \u043a\u043b\u0430\u0441\u0441\u0430<\/p>\n<\/li>\n<li>\n<p><strong><em>-verbose<\/em><\/strong>\u00a0\u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043e\u0431\u0448\u0438\u0440\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0435 \u0441\u0442\u0435\u043a\u0430, \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043e\u0431\u044a\u0435\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435 \u043a\u043b\u0430\u0441\u0441\u0430.<\/p>\n<\/li>\n<li>\n<p><strong><em>-c<\/em><\/strong>\u00a0\u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 javap \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430 Java, \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u0443\u044f \u043a\u043b\u0430\u0441\u0441<\/p>\n<\/li>\n<\/ul>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/getpro\/habr\/upload_files\/931\/a7b\/962\/931a7b96200e77032ea9fa5a668ec012.jpg\" alt=\"\u0423\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u044b javap\u00a0\u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u043f\u0446\u0438\u0439.\u00a0 \u041a\u043e\u043c\u0430\u043d\u0434\u0430\u00a0javap\u00a0\u0441\u00a0\u043a\u043b\u044e\u0447\u043e\u043c\u00a0sysinfo\u00a0\u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0445\u044d\u0448 \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438.  \" title=\"\u0423\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u044b javap\u00a0\u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u043f\u0446\u0438\u0439.\u00a0 \u041a\u043e\u043c\u0430\u043d\u0434\u0430\u00a0javap\u00a0\u0441\u00a0\u043a\u043b\u044e\u0447\u043e\u043c\u00a0sysinfo\u00a0\u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0445\u044d\u0448 \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438.  \" width=\"780\" height=\"286\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/931\/a7b\/962\/931a7b96200e77032ea9fa5a668ec012.jpg\" data-blurred=\"true\"\/><figcaption>\u0423\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u044b javap\u00a0\u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u043f\u0446\u0438\u0439.\u00a0 \u041a\u043e\u043c\u0430\u043d\u0434\u0430\u00a0javap\u00a0\u0441\u00a0\u043a\u043b\u044e\u0447\u043e\u043c\u00a0sysinfo\u00a0\u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0445\u044d\u0448 \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438.  <\/figcaption><\/figure>\n<h4>\u041a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 javap<\/h4>\n<p>\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u044b <em>javap<\/em>\u00a0\u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u044b \u0432 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u043a\u043b\u0430\u0441\u0441\u0430 \u0438 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430.\u00a0\u0412\u043e\u0442 \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u0443 <em>javap<\/em>\u00a0\u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439:<\/p>\n<ol>\n<li>\n<p>\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0443\u0442\u0438\u043b\u0438\u0442\u0430 <em>javap<\/em> \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u043e \u043f\u0443\u0442\u0438 \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 PATH \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043a\u043b\u0430\u0441\u0441 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 <em>javap<\/em> \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d <\/p>\n<\/li>\n<li>\n<p>\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <em>javap<\/em> \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c -c \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c \u043a\u043b\u0430\u0441\u0441\u0430 <\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430<\/p>\n<\/li>\n<\/ol>\n<h4>\u0414\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 Java \u0431\u0430\u0439\u0442-\u043a\u043e\u0434<\/h4>\n<p>\u0412\u043e\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u0432\u044b\u0448\u0435\u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430 Java javap.<\/p>\n<pre><code class=\"java\">C:\\_tools\\java8\\javap example\\bin> javap -verbose com.mcnz.javap.example.CommandTutorial  Classfile \/C:\/_tools\/java8\/javap example\/bin\/com\/mcnz\/javap\/example\/CommandTutorial.class   Last modified Nov 25, 2021; size 1864 bytes   MD5 checksum f1239fdfb14b9d5874f157242d884ea7   Compiled from \"CommandTutorial.java\" public class com.mcnz.javap.example.CommandTutorial extends java.util.ArrayList&lt;java.lang.Object>   minor version: 0   major version: 55   flags: (0x0021) ACC_PUBLIC, ACC_SUPER   this_class: #1                          \/\/ com\/mcnz\/javap\/example\/CommandTutorial   super_class: #3                         \/\/ java\/util\/ArrayList   interfaces: 0, fields: 3, methods: 6, attributes: 5 Constant pool:    #1 = Class              #2             \/\/ com\/mcnz\/javap\/example\/CommandTutorial    #2 = Utf8               com\/mcnz\/javap\/example\/CommandTutorial    #3 = Class              #4             \/\/ java\/util\/ArrayList    #4 = Utf8               java\/util\/ArrayList    #5 = Utf8               serialVersionUID    #6 = Utf8               J    #7 = Utf8               ConstantValue    #8 = Long               1l   #10 = Utf8               foo   #11 = Utf8               Ljava\/lang\/String;   #12 = Utf8               bar   #13 = Utf8               &lt;init>   #14 = Utf8               ()V   #15 = Utf8               Code   #16 = Methodref          #3.#17         \/\/ java\/util\/ArrayList.\"&lt;init>\":()V   #17 = NameAndType        #13:#14        \/\/ \"&lt;init>\":()V   #18 = Utf8               LineNumberTable   #19 = Utf8               LocalVariableTable   #20 = Utf8               this   #21 = Utf8               Lcom\/mcnz\/javap\/example\/CommandTutorial;   #22 = Utf8               doStuff   #23 = Utf8               doStringStuff   #24 = Utf8               ()Ljava\/lang\/String;   #25 = Utf8               main   #26 = Utf8               ([Ljava\/lang\/String;)V   #27 = Utf8               args   #28 = Utf8               [Ljava\/lang\/String;   #29 = Utf8               useInnerType   #30 = InvokeDynamic      #0:#31         \/\/ #0:singleMethod:()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;   #31 = NameAndType        #32:#33        \/\/ singleMethod:()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;   #32 = Utf8               singleMethod   #33 = Utf8               ()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;   #34 = Utf8               innerTypeImpl   #35 = Utf8               Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;   #36 = Utf8               lambda$0   #37 = Fieldref           #38.#40        \/\/ java\/lang\/System.out:Ljava\/io\/PrintStream;   #38 = Class              #39            \/\/ java\/lang\/System   #39 = Utf8               java\/lang\/System   #40 = NameAndType        #41:#42        \/\/ out:Ljava\/io\/PrintStream;   #41 = Utf8               out   #42 = Utf8               Ljava\/io\/PrintStream;   #43 = String             #44            \/\/ javap example!   #44 = Utf8               javap example!   #45 = Methodref          #46.#48        \/\/ java\/io\/PrintStream.println:(Ljava\/lang\/String;)V   #46 = Class              #47            \/\/ java\/io\/PrintStream   #47 = Utf8               java\/io\/PrintStream   #48 = NameAndType        #49:#50        \/\/ println:(Ljava\/lang\/String;)V   #49 = Utf8               println   #50 = Utf8               (Ljava\/lang\/String;)V   #51 = Utf8               SourceFile   #52 = Utf8               CommandTutorial.java   #53 = Utf8               Signature   #54 = Utf8               Ljava\/util\/ArrayList&lt;Ljava\/lang\/Object;>;   #55 = Utf8               BootstrapMethods   #56 = Methodref          #57.#59        \/\/ java\/lang\/invoke\/LambdaMetafactory.metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invoke\/MethodType;Ljav a\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodHandle;Ljava\/lang\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;   #57 = Class              #58            \/\/ java\/lang\/invoke\/LambdaMetafactory   #58 = Utf8               java\/lang\/invoke\/LambdaMetafactory   #59 = NameAndType        #60:#61        \/\/ metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodType;Ljava\/lang \/invoke\/MethodHandle;Ljava\/lang\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;   #60 = Utf8               metafactory   #61 = Utf8               (Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodHandle;Ljava\/lan g\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;   #62 = MethodHandle       6:#56          \/\/ REF_invokeStatic java\/lang\/invoke\/LambdaMetafactory.metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invok e\/MethodType;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodHandle;Ljava\/lang\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;   #63 = MethodType         #14            \/\/  ()V   #64 = Methodref          #1.#65         \/\/ com\/mcnz\/javap\/example\/CommandTutorial.lambda$0:()V   #65 = NameAndType        #36:#14        \/\/ lambda$0:()V   #66 = MethodHandle       6:#64          \/\/ REF_invokeStatic com\/mcnz\/javap\/example\/CommandTutorial.lambda$0:()V   #67 = MethodType         #14            \/\/  ()V   #68 = Utf8               InnerClasses   #69 = Class              #70            \/\/ com\/mcnz\/javap\/example\/CommandTutorial$1InnerClass   #70 = Utf8               com\/mcnz\/javap\/example\/CommandTutorial$1InnerClass   #71 = Utf8               InnerClass   #72 = Class              #73            \/\/ com\/mcnz\/javap\/example\/CommandTutorial$InnerType   #73 = Utf8               com\/mcnz\/javap\/example\/CommandTutorial$InnerType   #74 = Utf8               InnerType   #75 = Class              #76            \/\/ java\/lang\/invoke\/MethodHandles$Lookup   #76 = Utf8               java\/lang\/invoke\/MethodHandles$Lookup   #77 = Class              #78            \/\/ java\/lang\/invoke\/MethodHandles   #78 = Utf8               java\/lang\/invoke\/MethodHandles   #79 = Utf8               Lookup   #80 = Utf8               NestMembers {   protected static java.lang.String foo;     descriptor: Ljava\/lang\/String;     flags: (0x000c) ACC_PROTECTED, ACC_STATIC    public java.lang.String bar;     descriptor: Ljava\/lang\/String;     flags: (0x0001) ACC_PUBLIC    public com.mcnz.javap.example.CommandTutorial();     descriptor: ()V     flags: (0x0001) ACC_PUBLIC     Code:       stack=1, locals=1, args_size=1          0: aload_0          1: invokespecial #16                 \/\/ Method java\/util\/ArrayList.\"&lt;init>\":()V          4: return       LineNumberTable:         line 5: 0       LocalVariableTable:         Start  Length  Slot  Name   Signature             0       5     0  this   Lcom\/mcnz\/javap\/example\/CommandTutorial;    void doStuff();     descriptor: ()V     flags: (0x0000)     Code:       stack=0, locals=1, args_size=1          0: return       LineNumberTable:         line 11: 0       LocalVariableTable:         Start  Length  Slot  Name   Signature             0       1     0  this   Lcom\/mcnz\/javap\/example\/CommandTutorial;    public static void main(java.lang.String[]);     descriptor: ([Ljava\/lang\/String;)V     flags: (0x0009) ACC_PUBLIC, ACC_STATIC     Code:       stack=0, locals=1, args_size=1          0: return       LineNumberTable:         line 19: 0       LocalVariableTable:         Start  Length  Slot  Name   Signature             0       1     0  args   [Ljava\/lang\/String;    public void useInnerType();     descriptor: ()V     flags: (0x0001) ACC_PUBLIC     Code:       stack=1, locals=2, args_size=1          0: invokedynamic #30,  0             \/\/ InvokeDynamic #0:singleMethod:()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;          5: astore_1          6: return       LineNumberTable:         line 26: 0         line 27: 6       LocalVariableTable:         Start  Length  Slot  Name   Signature             0       7     0  this   Lcom\/mcnz\/javap\/example\/CommandTutorial;             6       1     1 innerTypeImpl   Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType; } SourceFile: \"CommandTutorial.java\" Signature: #54                          \/\/ Ljava\/util\/ArrayList&lt;Ljava\/lang\/Object;>; BootstrapMethods:   0: #62 REF_invokeStatic java\/lang\/invoke\/LambdaMetafactory.metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/Metho       stack=0, locals=1, args_size=1          0: return       LineNumberTable:         Start  Length  Slot  Name   Signature             0       1     0  args   [Ljava\/lang\/String;    public void useInnerType();     descriptor: ()V     flags: (0x0001) ACC_PUBLIC     Code:       stack=1, locals=2, args_size=1          0: invokedynamic #30,  0             \/\/ InvokeDynamic #0:singleMethod:()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;          5: astore_1          6: return       LineNumberTable:         line 26: 0         line 27: 6       LocalVariableTable:         Start  Length  Slot  Name   Signature             0       7     0  this   Lcom\/mcnz\/javap\/example\/CommandTutorial;             6       1     1 innerTypeImpl   Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType; } SourceFile: \"CommandTutorial.java\" Signature: #54                          \/\/ Ljava\/util\/ArrayList&lt;Ljava\/lang\/Object;>; BootstrapMethods:   0: #62 REF_invokeStatic java\/lang\/invoke\/LambdaMetafactory.metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/Metho dType;Ljava\/lang\/invoke\/MethodHandle;Ljava\/lang\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;     Method arguments:       #63 ()V         line 19: 0       LocalVariableTable:         Start  Length  Slot  Name   Signature             0       1     0  args   [Ljava\/lang\/String;    public void useInnerType();     descriptor: ()V     flags: (0x0001) ACC_PUBLIC     Code:       stack=1, locals=2, args_size=1          0: invokedynamic #30,  0             \/\/ InvokeDynamic #0:singleMethod:()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;          5: astore_1          6: return       LineNumberTable:         line 26: 0         line 27: 6       LocalVariableTable:          Start  Length  Slot  Name   Signature             0       7     0  this   Lcom\/mcnz\/javap\/example\/CommandTutorial;             6       1     1 innerTypeImpl   Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType; } SourceFile: \"CommandTutorial.java\" Signature: #54                          \/\/ Ljava\/util\/ArrayList&lt;Ljava\/lang\/Object;>; BootstrapMethods:   0: #62 REF_invokeStatic java\/lang\/invoke\/LambdaMetafactory.metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang \/invoke\/MethodType;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodHandle;Ljava\/lang\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;     Method arguments:       #63 ()V       #66 REF_invokeStatic com\/mcnz\/javap\/example\/CommandTutorial.lambda$0:()V       #67 ()V InnerClasses:   #71= #69;                               \/\/ InnerClass=class com\/mcnz\/javap\/example\/CommandTutorial$1InnerClass   static #74= #72 of #1;                  \/\/ InnerType=class com\/mcnz\/javap\/example\/CommandTutorial$InnerType of class com\/mcnz\/javap\/example \/CommandTutorial   public static final #79= #75 of #77;    \/\/ Lookup=class java\/lang\/invoke\/MethodHandles$Lookup of class java\/lang\/invoke\/MethodHandles NestMembers:   com\/mcnz\/javap\/example\/CommandTutorial$1InnerClass   com\/mcnz\/javap\/example\/CommandTutorial$InnerType  C:\\_tools\\java8\\javap example\\bin>javap -c com.mcnz.javap.example.CommandTutorial Compiled from \"CommandTutorial.java\" public class com.mcnz.javap.example.CommandTutorial extends java.util.ArrayList&lt;java.lang.Object> {   protected static java.lang.String foo;    public java.lang.String bar;    public com.mcnz.javap.example.CommandTutorial();     Code:        0: aload_0        1: invokespecial #16                 \/\/ Method java\/util\/ArrayList.\"&lt;init>\":()V        4: return    void doStuff();     Code:        0: return    public static void main(java.lang.String[]);     Code:        0: return    public void useInnerType();     Code:        0: invokedynamic #30,  0             \/\/ InvokeDynamic #0:singleMethod:()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;        5: astore_1        6: return }<\/code><\/pre>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b\u00a0<em>javap<\/em>\u00a0\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u043c\u0438 \u0438 \u043e\u0431\u0448\u0438\u0440\u043d\u044b\u043c\u0438.\u00a0\u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 <em>\u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b <\/em>\u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430 Java,\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u0430\u00a0<em>javap<\/em>\u00a0&#8212; \u044d\u0442\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \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\/articles\/592161\/\"> https:\/\/habr.com\/ru\/articles\/592161\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>JDK \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441 \u0440\u044f\u0434\u043e\u043c \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0445 \u0443\u0442\u0438\u043b\u0438\u0442, \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 bin.\u00a0\u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u0445\u043e\u0447\u0435\u0442 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0439\u0442-\u043a\u043e\u0434,\u00a0\u043e\u0441\u043e\u0431\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441 <em>\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 <\/em>Java\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u0430 <em>javap<\/em>.<\/p>\n<p>\u0423\u0442\u0438\u043b\u0438\u0442\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438\u00a0<em>javap,<\/em>\u00a0\u0442\u0430\u043a\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u043a\u0430\u043a \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440 \u0444\u0430\u0439\u043b\u043e\u0432 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 Java, \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043b\u044e\u0431\u043e\u043c \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 Java, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0435\u0433\u043e \u043f\u0440\u043e\u0441\u044f\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c.\u00a0\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043e\u043d \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0438\u043c\u0435\u043d\u0430 \u0432\u0441\u0435\u0445 \u043d\u0435\u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u043b\u0430\u0441\u0441\u0435:<\/p>\n<pre><code class=\"powershell\">C:\\_tools\\java8\\javap example\\bin>javap com.mcnz.javap.example.CommandTutorial Compiled from \"CommandTutorial.java\" public class com.mcnz.javap.example.CommandTutorial extends java.util.ArrayList&lt;java.lang.Object> { protected static java.lang.String foo; public java.lang.String bar; public com.mcnz.javap.example.CommandTutorial(); void doStuff(); public static void main(java.lang.String[]); public void useInnerType(); }<\/code><\/pre>\n<h4>\u0414\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440 \u0444\u0430\u0439\u043b\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 javap<\/h4>\n<p>\u041f\u043e \u043e\u0431\u0449\u0435\u043c\u0443 \u043f\u0440\u0438\u0437\u043d\u0430\u043d\u0438\u044e, \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0439 \u0432\u044b\u0448\u0435 \u043d\u0435\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0439 \u0432\u044b\u0432\u043e\u0434 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u043e\u0439 <em>javap<\/em>\u00a0\u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u043a\u043b\u0430\u0441\u0441\u0430 <em>CommandTutorial <\/em>\u043d\u0438\u0436\u0435. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u0435\u0441\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0438 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0430.\u00a0\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e JDK \u0443\u0442\u0438\u043b\u0438\u0442\u0430 <em>javap<\/em>\u00a0\u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0442\u043e\u043b\u044c\u043a\u043e\u00a0\u043e \u043f\u043e\u043b\u044f\u0445, \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0445\u0441\u044f\u00a0private, \u0445\u043e\u0442\u044f\u00a0\u0444\u043b\u0430\u0433\u00a0<em>-private<\/em>\u00a0\u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e private \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0445.<\/p>\n<pre><code class=\"java\">package com.mcnz.javap.example; import java.util.ArrayList;  public class CommandTutorial extends ArrayList&lt;Object> {    private static final long serialVersionUID = 1L;   protected static String foo;   public String bar;    void doStuff() { }   private String doStringStuff() { return null; }    public static void main(String args[]) {     class InnerClass {       public String stringStuff() {return \"\";};     }   }    interface InnerType { public void singleMethod(); };    public void useInnerType() {     InnerType innerTypeImpl = () -> System.out.println(\"javap example!\");   } }<\/code><\/pre>\n<h4>\u041f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u044b javap<\/h4>\n<p>\u0412\u044b\u0432\u043e\u0434\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u044b\u00a0<em>javap<\/em>\u00a0\u043f\u043e\u00a0<em>\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e<\/em>\u00a0\u043d\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u00a0<em>\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d<\/em>.\u00a0\u041e\u0434\u043d\u0430\u043a\u043e \u0435\u0441\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0444\u043b\u0430\u0433\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0432\u044b\u0432\u043e\u0434\u0430 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438.\u00a0\u041f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0435\u00a0\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438 \u0444\u043b\u0430\u0433\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b\u00a0<em>javap<\/em>\u00a0\u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442:<\/p>\n<ul>\n<li>\n<p><strong><em>-l<\/em><\/strong>\u00a0\u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043a\u043b\u0430\u0441\u0441\u0430<\/p>\n<\/li>\n<li>\n<p><strong><em>-s<\/em><\/strong>\u00a0\u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0442\u0438\u043f\u044b \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u044b \u043a\u043b\u0430\u0441\u0441\u0430<\/p>\n<\/li>\n<li>\n<p><strong><em>-sysinfo<\/em><\/strong>\u00a0\u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442 \u0434\u0430\u0442\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f, \u0445\u0435\u0448 MD5, \u043f\u0443\u0442\u044c \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0435 \u043a\u043b\u0430\u0441\u0441\u0430<\/p>\n<\/li>\n<li>\n<p><strong><em>-verbose<\/em><\/strong>\u00a0\u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043e\u0431\u0448\u0438\u0440\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0435 \u0441\u0442\u0435\u043a\u0430, \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043e\u0431\u044a\u0435\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435 \u043a\u043b\u0430\u0441\u0441\u0430.<\/p>\n<\/li>\n<li>\n<p><strong><em>-c<\/em><\/strong>\u00a0\u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 javap \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430 Java, \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u0443\u044f \u043a\u043b\u0430\u0441\u0441<\/p>\n<\/li>\n<\/ul>\n<figure class=\"full-width\"><figcaption>\u0423\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u044b javap\u00a0\u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u043f\u0446\u0438\u0439.\u00a0 \u041a\u043e\u043c\u0430\u043d\u0434\u0430\u00a0javap\u00a0\u0441\u00a0\u043a\u043b\u044e\u0447\u043e\u043c\u00a0sysinfo\u00a0\u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0445\u044d\u0448 \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438.  <\/figcaption><\/figure>\n<h4>\u041a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 javap<\/h4>\n<p>\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u044b <em>javap<\/em>\u00a0\u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u044b \u0432 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u043a\u043b\u0430\u0441\u0441\u0430 \u0438 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430.\u00a0\u0412\u043e\u0442 \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u00a0\u0443\u0442\u0438\u043b\u0438\u0442\u0443 <em>javap<\/em>\u00a0\u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439:<\/p>\n<ol>\n<li>\n<p>\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0443\u0442\u0438\u043b\u0438\u0442\u0430 <em>javap<\/em> \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u043e \u043f\u0443\u0442\u0438 \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 PATH \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043a\u043b\u0430\u0441\u0441 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 <em>javap<\/em> \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d <\/p>\n<\/li>\n<li>\n<p>\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <em>javap<\/em> \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c -c \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c \u043a\u043b\u0430\u0441\u0441\u0430 <\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430<\/p>\n<\/li>\n<\/ol>\n<h4>\u0414\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 Java \u0431\u0430\u0439\u0442-\u043a\u043e\u0434<\/h4>\n<p>\u0412\u043e\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u0435\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438 \u0432\u044b\u0448\u0435\u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430 Java javap.<\/p>\n<pre><code class=\"java\">C:\\_tools\\java8\\javap example\\bin> javap -verbose com.mcnz.javap.example.CommandTutorial  Classfile \/C:\/_tools\/java8\/javap example\/bin\/com\/mcnz\/javap\/example\/CommandTutorial.class   Last modified Nov 25, 2021; size 1864 bytes   MD5 checksum f1239fdfb14b9d5874f157242d884ea7   Compiled from \"CommandTutorial.java\" public class com.mcnz.javap.example.CommandTutorial extends java.util.ArrayList&lt;java.lang.Object>   minor version: 0   major version: 55   flags: (0x0021) ACC_PUBLIC, ACC_SUPER   this_class: #1                          \/\/ com\/mcnz\/javap\/example\/CommandTutorial   super_class: #3                         \/\/ java\/util\/ArrayList   interfaces: 0, fields: 3, methods: 6, attributes: 5 Constant pool:    #1 = Class              #2             \/\/ com\/mcnz\/javap\/example\/CommandTutorial    #2 = Utf8               com\/mcnz\/javap\/example\/CommandTutorial    #3 = Class              #4             \/\/ java\/util\/ArrayList    #4 = Utf8               java\/util\/ArrayList    #5 = Utf8               serialVersionUID    #6 = Utf8               J    #7 = Utf8               ConstantValue    #8 = Long               1l   #10 = Utf8               foo   #11 = Utf8               Ljava\/lang\/String;   #12 = Utf8               bar   #13 = Utf8               &lt;init>   #14 = Utf8               ()V   #15 = Utf8               Code   #16 = Methodref          #3.#17         \/\/ java\/util\/ArrayList.\"&lt;init>\":()V   #17 = NameAndType        #13:#14        \/\/ \"&lt;init>\":()V   #18 = Utf8               LineNumberTable   #19 = Utf8               LocalVariableTable   #20 = Utf8               this   #21 = Utf8               Lcom\/mcnz\/javap\/example\/CommandTutorial;   #22 = Utf8               doStuff   #23 = Utf8               doStringStuff   #24 = Utf8               ()Ljava\/lang\/String;   #25 = Utf8               main   #26 = Utf8               ([Ljava\/lang\/String;)V   #27 = Utf8               args   #28 = Utf8               [Ljava\/lang\/String;   #29 = Utf8               useInnerType   #30 = InvokeDynamic      #0:#31         \/\/ #0:singleMethod:()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;   #31 = NameAndType        #32:#33        \/\/ singleMethod:()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;   #32 = Utf8               singleMethod   #33 = Utf8               ()Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;   #34 = Utf8               innerTypeImpl   #35 = Utf8               Lcom\/mcnz\/javap\/example\/CommandTutorial$InnerType;   #36 = Utf8               lambda$0   #37 = Fieldref           #38.#40        \/\/ java\/lang\/System.out:Ljava\/io\/PrintStream;   #38 = Class              #39            \/\/ java\/lang\/System   #39 = Utf8               java\/lang\/System   #40 = NameAndType        #41:#42        \/\/ out:Ljava\/io\/PrintStream;   #41 = Utf8               out   #42 = Utf8               Ljava\/io\/PrintStream;   #43 = String             #44            \/\/ javap example!   #44 = Utf8               javap example!   #45 = Methodref          #46.#48        \/\/ java\/io\/PrintStream.println:(Ljava\/lang\/String;)V   #46 = Class              #47            \/\/ java\/io\/PrintStream   #47 = Utf8               java\/io\/PrintStream   #48 = NameAndType        #49:#50        \/\/ println:(Ljava\/lang\/String;)V   #49 = Utf8               println   #50 = Utf8               (Ljava\/lang\/String;)V   #51 = Utf8               SourceFile   #52 = Utf8               CommandTutorial.java   #53 = Utf8               Signature   #54 = Utf8               Ljava\/util\/ArrayList&lt;Ljava\/lang\/Object;>;   #55 = Utf8               BootstrapMethods   #56 = Methodref          #57.#59        \/\/ java\/lang\/invoke\/LambdaMetafactory.metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invoke\/MethodType;Ljav a\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodHandle;Ljava\/lang\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;   #57 = Class              #58            \/\/ java\/lang\/invoke\/LambdaMetafactory   #58 = Utf8               java\/lang\/invoke\/LambdaMetafactory   #59 = NameAndType        #60:#61        \/\/ metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodType;Ljava\/lang \/invoke\/MethodHandle;Ljava\/lang\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;   #60 = Utf8               metafactory   #61 = Utf8               (Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodHandle;Ljava\/lan g\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;   #62 = MethodHandle       6:#56          \/\/ REF_invokeStatic java\/lang\/invoke\/LambdaMetafactory.metafactory:(Ljava\/lang\/invoke\/MethodHandles$Lookup;Ljava\/lang\/String;Ljava\/lang\/invok e\/MethodType;Ljava\/lang\/invoke\/MethodType;Ljava\/lang\/invoke\/MethodHandle;Ljava\/lang\/invoke\/MethodType;)Ljava\/lang\/invoke\/CallSite;   #63 = MethodType         #14            \/\/  ()V   #64 = Methodref          #1.#65         \/\/ com\/mcnz\/javap\/example\/CommandTutorial.lambda$0:()V   #65 = NameAndType        #36:#14        \/\/ lambda$0:()V   #66 = MethodHandle       6:#64          \/\/ REF_invokeStatic com\/mcnz\/javap\/example\/CommandTutorial.lambda$0:()V   #67 = MethodType         #14            \/\/  ()V   #68 = Utf8               InnerClasses   #69 = Class              #70            \/\/ com\/mcnz\/javap\/example\/CommandTutorial$1InnerClass   #70 = Utf8               com\/mcnz\/javap\/example\/CommandTutorial$1InnerClass   #71 = Utf8               InnerClass   #72 = Class              #73            \/\/ com\/mcnz\/javap\/example\/CommandTutorial$InnerType   #73 = Utf8               com\/mcnz\/javap\/example\/CommandTutorial$InnerType   #74 = Utf8               InnerType   #75 = Class              #76            \/\/ java\/lang\/invoke\/MethodHandles$Lookup   #76 = Utf8               java\/lang\/invoke\/MethodHandles$Lookup   #77 = Class              #78            \/\/ java\/lang\/invoke\/MethodHandles   #78 = Utf8               java\/lang\/invoke\/MethodHandles   #79 = Utf8               Lookup   #80 = Utf8               NestMembers {   protected static java.lang.String foo;     descriptor: Ljava\/lang\/String;     flags: (0x000c) ACC_PROTECTED, ACC_STATIC    public java.lang.String bar;     descriptor: Ljava\/lang\/String;     flags: (0x0001) ACC_PUBLIC    public com.mcnz.javap.example.CommandTutorial();     descriptor: ()V     flags: (0x0001) ACC_PUBLIC     Code:       stack=1, locals=1, args_size=1          0: aload_0          1: invokespecial #16                 \/\/ Method java\/util\/ArrayList.\"&lt;init>\":()V          4: return       LineNumberTable:         line 5: 0       LocalVariableTable:         Start  Length  Slot  Name   Signature             0  <\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\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-401810","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/401810","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=401810"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/401810\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=401810"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=401810"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=401810"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}