JAVA语言开发环境

简介: JAVA语言开发环境

目录

一、java开发工具JDK

1.JDK是 Java 语言的软件开发工具包

2.JDK包含的基本组件包括:

3.JDK分类

4.JDK的下载与安装

5. JAVA_HOME 的配置

6.JDK的使用(编译、运行java程序)


一、java开发工具JDK

1.JDK是 Java 语言的软件开发工具包

JDK中包含各种工具和实用程序,可以开发、打包、监控和部署为任何标准 Java 平台构建的应用程序,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

SE(JavaSE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE。

EE(JavaEE),enterprise edition,企业版,使用这种JDK开发J2EE应用程序,从JDK 5.0开始,改名为Java EE。从2018年2月26日开始,J2EE改名为Jakarta EE [1]  。

ME(J2ME),micro edition,主要用于移动设备、嵌入式设备上的java应用程序,从JDK 5.0开始,改名为Java ME。

没有JDK的话,无法编译Java程序(指java源码.java文件),如果想只运行Java程序(指class或jar或其它归档文件),要确保已安装相应的JRE。

2.JDK包含的基本组件包括:

javac – 编译器,将源程序转成字节码

jar – 打包工具,将相关的类文件打包成一个文件

javadoc – 文档生成器,从源码注释中提取文档

jdb – debugger,查错工具

java – 运行编译后的java程序(.class后缀的)

appletviewer:小程序浏览器,一种执行html文件上的Java小程序的Java浏览器。

Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。

Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。

Jconsole: Java进行系统调试和监控的工具

image.gif

                                                             JDK结构图

3.JDK分类

java.lang: 这个是系统的基础类,比如String等都是这里面的,这个包是一个可以不用引入(import)就可以使用的包。

java.io: 这里面是所有输入输出有关的类,比如文件操作等。

java.nio:为了完善io包中的功能,提高io包中性能而写的一个新包 ,例如NIO非堵塞应用

java.net: 这里面是与网络有关的类,比如URL,URLConnection等。

java.util: 这个是系统辅助类,特别是集合类Collection,List,Map等。

java.sql: 这个是数据库操作的类,Connection, Statement,ResultSet等。

javax.servlet:这个是JSP,Servlet等使用到的类。

4.JDK的下载与安装

下载地址:Java Platform, Standard Edition 11 ReferenceImplementations

进入后左侧选择你所需要的版本,再点进去选择合适自己操作系统的JDK即可。

image.gif

JDK的安装只需要一直点击下一步即可,选择安装路径时建议不要选择C盘,安装完成后需要配置环境变量,这样才能使用。

5. JAVA_HOME 的配置

首先 Win+R 打开命令行,输入 sysdm.cpl ,结果如下图:点击高级-环境变量

image.gif

image.gif

变量名必须写JAVA_HOME,变量值写JDK的安装路径。

完成后如图编辑变量Path

image.gif

image.gif

输入%JAVA_HOME%\bin 并移动到顶部

image.gif

然后一直点击 确定 即可。这样,Java 环境就安装配置好了。那么怎么查看呢?打开命令行,使用 java -version 查看版本。有如下结果,就代表环境配置好了,否则配置出错了。结果如下图:

image.gif

6.JDK的使用(编译、运行java程序)

在桌面新建一个 HelloWorld.java 文件,写入如下代码

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("******************************");
        System.out.println("Hello World!");
        System.out.println("******************************");
    }
}

image.gif

在命令行编译HelloWorld.java 。编译是指将我们编写的Java源文件翻译成JVM认识的class文件 。在这个过程中,编译器会检查我们所写的程序是否有错误,有错误就会提示出来,如果没有错误就会编译成功。打开命令行,执行如下命令即进行了编译。如下图:

image.gif

1、小提示:

上述使用命令行编译和运行代码挺麻烦的,了解一下就行。以后用 IDEA 开发工具进行编译和运行,就不再需要用命令行去操作了。

2、关于 main 方法

main 方法: 称为主方法。写法是固定格式不可以更改。main 方法是程序的入口点或起始点,无论我们编写多少程序,JVM 在运行的时候,都会从 main 方法这里开始执行。这里要注意:不要写成 mian ,初学容易写错。

相关文章
|
16天前
|
数据可视化 Java
Java语言使用DL4J实现图片分类
【6月更文挑战第14天】Java语言使用DL4J实现图片分类
29 3
|
16小时前
|
存储 NoSQL Java
探索Java分布式锁:在高并发环境下的同步访问实现与优化
【6月更文挑战第30天】Java分布式锁在高并发下确保数据一致性,通过Redis的SETNX、ZooKeeper的临时节点、数据库操作等方式实现。优化策略包括锁超时重试、续期、公平性及性能提升,关键在于平衡同步与效率,适应大规模分布式系统的需求。
10 1
|
6天前
|
Java
Java中的`synchronized`关键字是一个用于并发控制的关键字,它提供了一种简单的加锁机制来确保多线程环境下的数据一致性。
【6月更文挑战第24天】Java的`synchronized`关键字确保多线程数据一致性,通过锁定代码块或方法防止并发冲突。同步方法整个方法体为临界区,同步代码块则锁定特定对象。示例展示了如何在`Counter`类中使用`synchronized`保证原子操作和可见性,同时指出过度使用可能影响性能。
19 4
|
25天前
|
Java 容器
双指针(JAVA语言)
双指针(JAVA语言)
双指针(JAVA语言)
|
6天前
|
算法 Java
垃圾回收机制(Garbage Collection,GC)是Java语言的一个重要特性,它自动管理程序运行过程中不再使用的内存空间。
【6月更文挑战第24天】Java的GC自动回收不再使用的内存,关注堆中的对象。通过标记-清除、复制、压缩和分代等算法识别无用对象。GC分为Minor、Major和Full类型,针对年轻代、老年代或整个堆进行回收。性能优化涉及算法选择和参数调整。
18 3
|
12天前
|
Java 数据安全/隐私保护 开发者
Java是一种完全支持面向对象编程的语言,其面向对象特性包括封装、继承、多态和抽象等
【6月更文挑战第18天】**面向对象编程(OOP)通过对象封装状态和行为,实现问题域的抽象。Java全面支持OOP,核心特性包括**: - **封装**:保护数据安全,隐藏内部细节。 - **继承**:子类继承父类属性和行为,促进代码重用。 - **多态**:一个接口多种实现,增强灵活性和扩展性。 - **抽象**:通过接口和抽象类抽离共性,简化复杂性。 **Java的OOP便于理解和解决复杂系统问题。**
26 3
|
19天前
|
安全 Java API
Java一分钟之-GraphQL:查询语言与API设计
【6月更文挑战第11天】GraphQL,一种革命性的查询语言,正在改变Web开发中的API构建和使用方式。它允许客户端按需请求数据,减少冗余,提升性能。本文概述了GraphQL的核心理念,如声明式查询、强类型和统一入口,并讨论了Java开发者常遇问题:过度查询、Schema设计和安全性。解决方案包括使用Dataloader、优化Schema和实现授权机制。通过理解原理、关注性能、重视安全和持续实践,开发者能更好地利用GraphQL构建高效API。
25 2
|
23天前
|
Oracle Java 关系型数据库
Java入门——开发环境、入门程序(搭建Java开发环境、安装JDK 验证、JDK、编写代码、编译代码、运行代码)
Java入门——开发环境、入门程序(搭建Java开发环境、安装JDK 验证、JDK、编写代码、编译代码、运行代码)
31 3
|
22天前
|
机器学习/深度学习 Java 开发者
Python vs. Java:语言之争的终结
【6月更文挑战第8天】Python与Java,两种影响力巨大的编程语言,各有千秋。Python以简洁语法和强大库支持在数据科学、机器学习领域大放异彩,适合快速原型设计;而Java以其稳定性能、跨平台兼容性在大型系统、企业应用中占据一席之地。语言之争实为互补,开发者应根据项目需求选择合适工具,两者和谐共存,共同推动编程技术进步。
|
23天前
|
存储 设计模式 Java
Java语言中反射动态代理接口的解释与演示
Java语言中反射动态代理接口的解释与演示
15 1