按照Java系统的功能划分为:

一、Java语言,即使用Java编程语言进行软件开发。

二、开发过程中使用的工具和API(API(Application Programming Interface,应用程序接口),是一些预先定义的程序接口,这些接口往往已经实现了系统底层级别或基础服务级别的程序实现,开发人员只要调用这些已经成熟的接口即可实现自己软件设计中的功能。)

包括:

javac:编译一个.java文件,产生.class文件。

实例:

D:\下 Testjavaexe.java

  public class Testjavaexe{
    public static void main(String[] args){
      System.out.println("Test java.exe");
    }
  }

java:运行一个.class或者.jar文件,产生运行效果。

实例:

  javadoc:根据Java源代码及其说明语句生成的HTML文档。

实例:

D:\ 下已自动生成相关文档

jar:文件管理工具,是个java应用程序,可将多个文件合并为单个JAR归档文件。

实例:

D:\

---恢复内容结束---

按照Java系统的功能划分为:

Java语言,即使用Java编程语言进行软件开发。

开发过程中使用的工具和API(API(Application Programming Interface,应用程序接口),是一些预先定义的程序接口,这些接口往往已经实现了系统底层级别或基础服务级别的程序实现,开发人员只要调用这些已经成熟的接口即可实现自己软件设计中的功能。)

包括:

javac:编译一个.java文件,产生.class文件。

实例:

D:\下 Testjavaexe.java

  public class Testjavaexe{
    public static void main(String[] args){
      System.out.println("Test java.exe");
    }
  }

java:运行一个.class或者.jar文件,产生运行效果。

实例:

  javadoc:根据Java源代码及其说明语句生成的HTML文档。

实例:

D:\ 下已自动生成相关文档

jar:文件管理工具,是个java应用程序,可将多个文件合并为单个JAR归档文件。

实例:

D:\

  javap:jdk自带的反解析工具,作用根据class字节码文件,反解析出当前类对应的code区(汇编指令)、本地变量表、异常表和代码行偏移量映射表、常量池等等信息。

实例:

JPDA(Java platform debugger architecture):是java平台调试架构的简称,由java虚拟机后端和调试平台前端组成。

  • 1、java虚拟机提供了java调试功能;
  • 2、调试平台通过调试交互协议向java虚拟机请求服务,以对在虚拟机中运行的程序进行调试。

---恢复内容结束---

按照Java系统的功能划分为:

Java语言,即使用Java编程语言进行软件开发。

开发过程中使用的工具和API(API(Application Programming Interface,应用程序接口),是一些预先定义的程序接口,这些接口往往已经实现了系统底层级别或基础服务级别的程序实现,开发人员只要调用这些已经成熟的接口即可实现自己软件设计中的功能。)

包括:

javac:编译一个.java文件,产生.class文件。

实例:

D:\下 Testjavaexe.java

  public class Testjavaexe{
    public static void main(String[] args){
      System.out.println("Test java.exe");
    }
  }

java:运行一个.class或者.jar文件,产生运行效果。

实例:

  javadoc:根据Java源代码及其说明语句生成的HTML文档。

实例:

D:\ 下已自动生成相关文档

jar:文件管理工具,是个java应用程序,可将多个文件合并为单个JAR归档文件。

实例:

D:\

---恢复内容结束---

按照Java系统的功能划分为:

Java语言,即使用Java编程语言进行软件开发。

开发过程中使用的工具和API(API(Application Programming Interface,应用程序接口),是一些预先定义的程序接口,这些接口往往已经实现了系统底层级别或基础服务级别的程序实现,开发人员只要调用这些已经成熟的接口即可实现自己软件设计中的功能。)

包括:

javac:编译一个.java文件,产生.class文件。

实例:

D:\下 Testjavaexe.java

  public class Testjavaexe{
    public static void main(String[] args){
      System.out.println("Test java.exe");
    }
  }

java:运行一个.class或者.jar文件,产生运行效果。

实例:

  javadoc:根据Java源代码及其说明语句生成的HTML文档。

实例:

D:\ 下已自动生成相关文档

jar:文件管理工具,是个java应用程序,可将多个文件合并为单个JAR归档文件。

实例:

D:\

  javap:jdk自带的反解析工具,作用根据class字节码文件,反解析出当前类对应的code区(汇编指令)、本地变量表、异常表和代码行偏移量映射表、常量池等等信息。

实例:

JPDA(Java platform debugger architecture):是java平台调试架构的简称,由java虚拟机后端和调试平台前端组成。

  • 1、java虚拟机提供了java调试功能;
  • 2、调试平台通过调试交互协议向java虚拟机请求服务,以对在虚拟机中运行的程序进行调试。

JConsole: 内置的 Java 性能分析器,可以从命令行或在 GUI shell 中运行。用于监控 Java 应用程序性能和跟踪 Java 中的代码。

Java VisualVM:可视化监控线程,内存使用情况,查看方法的CPU时间和内存中的对象,已被GC的对象,反向查看分配的堆栈,并可捕获有关JVM软件实例数据、保存到本地,供后期查看。

JAVA虚拟机:Java技术体系讲解(一)的更多相关文章

  1. 深入理解java虚拟机----java技术体系(一)

    1.java技术体系 举例: class文件格式:如下图所示,java源代码可以根据不同的编译器可以编译成不同的代码.即可以自定义语言规范比如beanshell,并编写代码; 然后自己编写java编译 ...

  2. 深入理解Java虚拟机 - Java体系

    使用JAVA已经快三年了,但说来惭愧,一直以来认为Java就是Java语言本身,最多再包括一个JVM,对于整个Java的体系结构还是不甚明了,现在有时间把<深入理解Java虚拟机>这本书读 ...

  3. 深入理解java虚拟机---java虚拟机内存管理(七)

    本地方法栈.java堆.方法区 本地方法栈在HotSpot版本内与java虚拟机栈是合二为一的.不单独区分本地方法栈.但是java虚拟机中是有这样一块区域的. 作用: 1.本地方法栈为虚拟机栈执行ja ...

  4. Java虚拟机——Java内存区域与内存溢出

    内存区域 Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域.Java虚拟机规范将JVM所管理的内存分为以下几个运行时数据区:程序计数器.Java虚拟机栈.本地方法栈 ...

  5. Java虚拟机-----------Java内存区域与内存溢出异常

    Java内存区域划分 Java虚拟机运行时的数据区大致可划分为五部分:方法区,堆(两部分组成Java堆内存),虚拟机栈,本地方法栈(Java栈内存),程序计数器. 1.程序计数器 程序计数器占较小的内 ...

  6. 深入理解java虚拟机---java虚拟机内存管理(六)

    java虚拟机栈的理解 虚拟机栈就是我们所熟知的栈内存,栈内存属于线程独有的.而在栈内存中的局部变量表中存储的引用类型只是存储对象的内存地址.对象的创建在堆内存中,即对象在线程共享区中. 局部变量表: ...

  7. 深入理解java虚拟机---java虚拟机内存管理(五)

    1.深入理解java虚拟机 总图: 1.线程共享区: 2.线程独占区: 1.程序计数器 理解为当前线程锁执行的字节码的行号指示器,程序计数器没有内存异常错误.

  8. 深入理解java虚拟机---java虚拟机的发展史(四)

    1.java虚拟机 A:java虚拟机有很多个版本,但是我们经常使用的是sun公司的HotSpot,可以通过以下命令获取java虚拟机版本 B:JAVA虚拟机分类: 1.Sun Class VM 2. ...

  9. Java虚拟机--Java内存区域的划分和异常

    Java内存区域的划分和异常 运行时数据区域 JVM在运行Java程序时候会将内存划分为若干个不同的数据区域. 程序计数器 线程私有.可看作是当前线程所执行的字节码的行号指示器,字节码解释器的工作是通 ...

随机推荐

  1. jdk动态代理和cglib动态代理底层实现原理详细解析(cglib动态代理篇)

    代理模式是一种很常见的模式,本文主要分析cglib动态代理的过程 1. 举例 使用cglib代理需要引入两个包,maven的话包引入如下 <!-- https://mvnrepository.c ...

  2. Python中利用for表达式创建列表

    1.for表达式语法格式及用法 for表达式利用可迭代对象创建新的列表,for表达式也称为列表推导式,具体语法格式如下: [表达式 for 循环计数器 in 可迭代对象] 例: a = [ i + i ...

  3. SystemC中文教程一

    SystemC是什么 首先, SystemC不是一门新的语言,而是基于C++开发的library:因此,你所熟悉的C++知识都可以在SystemC建模时使用:理论上来说,SystemC library ...

  4. PAT T1012 Greedy Snake

    直接暴力枚举,注意每次深搜完状态的还原~ #include<bits/stdc++.h> using namespace std; ; int visit[maxn][maxn]; int ...

  5. 十一 三种Struts2的数据封装方式,封装页面传递的数据

    Struts2的数据封装:Struts2是一个web层框架,框架是软件的半成品.提供了数据封装的基本功能. 注:Struts2底层(核心过滤器里面的默认栈里面的拦截器,具体见struts-defaul ...

  6. springMVC的 Converter转换器 和 Formatter

    Converter转换器 spring的Converter是可以将一种类型转换成另一种类型的一个对象, 自定义Converter需要实现Converter接口 日期转换器 import java.te ...

  7. Nacos client 客户端cpu占用100% 问题排查和解决方案

    Nacos version:1.1.3client version:1.0.0 dependency: 'org.springframework.cloud:spring-cloud-alibaba- ...

  8. for循环语句及批量创建用户!

    1.for 语句结构for 变量名 in 取值列表do命令序列done ================================================================ ...

  9. while (rs.next()) 与 if(rs.next())的区别

    while (rs.next())是用来循环遍历结果集的. if(rs.next())是用来判断结果集是否有值,有值则执行if语句内代码块. 简而言之 while(rs.next()) 就是将rs全部 ...

  10. SpringBoot之日志记录-专题四

    SpringBoot之日志记录-专题四 六.日志管理 6.1使用log4j记录日志 6.1.2新建log4j配置文件 文件名称log4j.properties #log4j.rootLogger=CO ...