jdk、jre、jvm的区别联系

简介:  jdk包括以下三个东西:D:\Program Files\jdk1.7.0_21\bin\javac.exe和java.exeD:\Program Files\jdk1.7.0_21\jre D:\Program Files\jdk1.7.0_21\jre\bin\client\jvm.dllJava类库概念:Java的应用程序接口以包的形式来组织,每个包提供了大量的相关类、接口和异常处理类,这些包的集合就是Java的类库。

 jdk包括以下三个东西:

D:\Program Files\jdk1.7.0_21\bin\javac.exe和java.exe

D:\Program Files\jdk1.7.0_21\jre

 D:\Program Files\jdk1.7.0_21\jre\bin\client\jvm.dll

Java类库概念:Java的应用程序接口以包的形式来组织,每个包提供了大量的相关类、接口和异常处理类,这些包的集合就是Java的类库。 

包名以 Java 开始的包是 Java 核心包 (Java Core Package) ; 
包名以 Javax 开始的包是 Java 扩展包 (Java Extension Package) ,例如 javax.swing 包;

常用的 Java 核心包 (Java Core Package) 
1. java.lang Java 编程语言的基本类库,在使用 Java 时,除了 java.lang 外,其他的包都需要 import 语句引入之后才能使用。

  1. java.applet 创建 applet 需要的所有类
  2. java.awt 创建用户界面以及绘制和管理图形、图像的类
  3. java.io 通过数据流、对象序列以及文件系统实现的系统输入、输出
  4. java.NET 用于实现网络通讯应用的所有类
  5. java.util 集合类、时间处理模式、日期时间工具等各类常用工具包 
    其它还有
  6. java.sql 访问和处理来自于 Java 标准数据源数据的类
  7. java.test 以一种独立于自然语言的方式处理文本、日期、数字和消息的类和接口
  8. java.security 设计网络安全方案需要的一些类
  9. java.beans 开发 Java Beans 需要的所有类
  10. java.math 简明的整数算术以及十进制算术的基本函数
  11. java.rmi 与远程方法调用相关的所有类 
    常用的 Java 扩展包 (Java Extension Package)
  12. javax.accessibility 定义了用户界面组件之间相互访问的一种机制
  13. javax.naming.* 为命名服务提供了一系列类和接口
  14. javax.swing.* 提供了一系列轻量级的用户界面组件,是目前 Java 用户界面常用的包 
    其中最重要的是java.lang和java.util。 
    java.lang 包 
    这个包称为 java 语言包,是由编译器自动引入的。程序中不必用 import 语句就可以使用。它所包含的类和接口对所有实际的 Java 程序都是必要的。
  15. object 类
  16. 数学类 (Math)
  17. 数据类型类
  18. 线程类
  19. 字符串类 (String 类和 StringBuffer 类 )
  20. 系统及运行类 (System 类和 Runtime 类 )
  21. 错误和异常处理类 (Throwable 、 Exception 、 Error)
  22. 过程类 (process) 
    java.util 包
  23. 日期类、日历类( Data 、 Calendar 、 GregorianCalendar )
  24. 随机数类( Random )
  25. 位运算类( BitSet )
  26. 矢量类( Vector )
  27. 数据结构类( Stack )
  28. 散列表类( Hashtable )
  29. StringTokenizer类

1.java.lang包 java.lang包 是Java中最常用的包,程序不需要注入,就可以使用该包中的类,利用包中的类可以设计最基本的Java程序。

2.java.awt包 java.awt包中的类提供了图形界面的创建方法,包括按钮、文本框、列表框、容器、字体、颜色和图形等元素的建立和设置。

3.javax.swing包 javax.swing包为Java编写的图形界面提供创建类,利用javax.swing包的类建立的界面元素可调整为各种操作系统的界面风格,支持各种操作平台的界面的开发。此外,swing包还提供了树形控件、标签页控件、表格控件的类。Java.swing包中的很多类都是从java.awt包的类继承而来,Java保留使用java.awt包是为了保持技术的兼容性,但应尽量地使用javax.swing包来开发程序界面。

4.java.io包 java.io包的类提供数据流方式的系统输入输出控制、文件和对象的读写串行化处理,比较常用的类包括:BufferInputStream、BufferOutputStream、BufferedReader、BufferedWriter、DataInputStream、DataOutputStream、FileInputStream和FileOutputStream等。

5.java.util包 java.util包提供时间日期、随机数以及列表、集合、哈希表和堆栈等创建复杂数据结构的类,比较常见的类有:Date、Timer、Random和LinkedList等。

6.java.NET包 java.Net包提供网络开发的支持,包括封装了Socket套接字功能的服务器Serversocket类、客户端Socket类以及访问互联网上的各种资源的URL类。

7.java.applet包 java.applet包只有一个Applet类,用于开发网页上的Applet小程序,使网页具有更强的交互能力以及多媒体、网络功能。

这七个包中的类库都是java编程语言中最基本最常用的,同学们一定要熟练掌握。这样才能在java编程语言学习中提高效率,事半功倍。

 

目录
相关文章
|
2月前
|
存储 算法 Java
jvm性能优化(一)-基于JDK1.8
jvm性能优化(一)-基于JDK1.8
|
26天前
|
Java
Java基础之 JDK8 HashMap 源码分析(中间写出与JDK7的区别)
这篇文章详细分析了Java中HashMap的源码,包括JDK8与JDK7的区别、构造函数、put和get方法的实现,以及位运算法的应用,并讨论了JDK8中的优化,如链表转红黑树的阈值和扩容机制。
19 1
|
30天前
|
Dubbo Java 应用服务中间件
剖析Tomcat线程池与JDK线程池的区别和联系!
剖析Tomcat线程池与JDK线程池的区别和联系!
剖析Tomcat线程池与JDK线程池的区别和联系!
|
3月前
|
存储 Java
【Java集合类面试七】、 JDK7和JDK8中的HashMap有什么区别?
JDK7中的HashMap使用数组加链表解决冲突,而JDK8增加了红黑树结构以优化链表过长时的性能,提高查找效率。
|
3月前
|
Java 编译器 测试技术
Java零基础教学(03):如何正确区别JDK、JRE和JVM??
【8月更文挑战第3天】Java零基础教学篇,手把手实践教学!
58 2
|
3月前
|
缓存 Java 编译器
JRE、JDK、JVM 和 JIT 之间的区别详解
【8月更文挑战第22天】
108 0
|
3月前
|
Arthas Prometheus 监控
使用JDK自带工具调优JVM的常用命令
使用JDK自带工具调优JVM的常用命令
|
2月前
|
Java
安装JDK18没有JRE环境的解决办法
安装JDK18没有JRE环境的解决办法
266 3
|
3月前
|
Java 关系型数据库 MySQL
"解锁Java Web传奇之旅:从JDK1.8到Tomcat,再到MariaDB,一场跨越数据库的冒险安装盛宴,挑战你的技术极限!"
【8月更文挑战第19天】在Linux上搭建Java Web应用环境,需安装JDK 1.8、Tomcat及MariaDB。本指南详述了使用apt-get安装OpenJDK 1.8的方法,并验证其版本。接着下载与解压Tomcat至`/usr/local/`目录,并启动服务。最后,通过apt-get安装MariaDB,设置基本安全配置。完成这些步骤后,即可验证各组件的状态,为部署Java Web应用打下基础。
56 1
|
3月前
|
Oracle Java 关系型数据库
Mac安装JDK1.8
Mac安装JDK1.8
663 4