java语言入门(一)之JAVA语言基的概述

本文介绍了Java语言的跨平台特性,重点讲解了JVM(Java虚拟机)及其核心机制——垃圾回收。垃圾回收自动管理内存,避免程序员手动回收。同时,文章提到了JDK(包含JRE和开发工具)与JRE的关系,以及如何安装配置JDK。此外,还讨论了Java程序中的注释类型和作用。最后,文章概述了Java API文档的使用和查看方法,以及如何通过API学习和理解Java技术。
摘要由CSDN通过智能技术生成

JVM与垃圾收集机制

Java语言的特点:跨平台性

原因:因为可以在每个不同平台下载jvm

核心机制-Java虚拟机

JVM是一个虚拟机的计算机,具有指令集并使用不同的储存区域。负责执行指令,管理数据,内存,寄存器。

对于不同的平台的平台,有不同的虚拟机

只有某平台提供了对应了java虚拟机,Java程序才可以在此平台运行

Java虚拟机机制屏蔽了底层运行平台的差别,实现了"一次编译,到处运行"

核心机制-垃圾回收

不在使用的内存空间应回收-垃圾回收

         在C/C++等语言中,由程序员负责回收无用内存。

        Java语言消除了程序员回收无用内存空间的责任,它提供了一种系统级线程跟踪存储空间的分配情况。并在JVM空闲时,检查并释放那些可被释放的存储空间。

        垃圾回收在Java程序运行过程中自动进行,程序员无法精确控制和干预。

Java程序还会出现内存泄漏和内存溢出问题吗?Yes!

JDK、JRE、JVM的关系

什么是JDK、JRE

JDK

JDK是提供Java开发人员使用的,其中包含了java的开发工具,也包括了JJRE。所以安装了JDK,就不用在单独安装JRE了

其中的开发工具:编译工具(javac.exe)打包工具(jar.exe)等

JRE

包括Java虚拟机和java程序所需要的核心类库等。如果想要运行一个开发的Java程序,计算机只想要安装JRE即可。

JDK、JRE、JVM的关系

JDK=JRE+开发工具集

JRE=JVM+Java SE标准类库

 官方网址:

        www.oracle.com

        java.sun.com

安装JDK

        傻瓜式安装,下一步即可。

        建议:安装路径不要有中午或者空格等特殊符号

        如果操作系统是64位的,软件尽量选择支持64位的

        当前提示安装JRE时,正常在JDK安装的时候已经安装过了,但是为了后续使用Eclipse等开发工具不报错,建议也根据提示安装JRE。

JDK的安装

下载JDK

下载路径:
链接:Java Downloads | Oracle

根据电脑的系统选择对应的版本,其中x86表示32位系统,x64表示64位系统。 

      JDK安装步骤

       双击下载下来的安装文件, 点下一步

     

       这里我们可以选择安装路径,也可以默认安装。如果更改路径最好不要放在中文或者带空格的目录下,以免将来出现不必要的麻烦。

       点击下一步就开始安装了

       设置环境变量

    桌面“我的电脑”右击,选择“属性”打开“系统控制面板”选择“高级系统设置”

进入之后选择高级系统设置,然后选择环境变量

在打开的环境变量对话框后,单击下方【系统变量】下的【新建】按钮;

然后输入JAVA_HOME,对应的变量值为你jdk安装的目录。

点击确定。

然后新建变量名:classpath 变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar点确定

然后在系统变量中找到名为“Path”的变量并双击,新建变量为 %JAVA_HOME%\bin

确定以后,分别输入“java”、“java -version”(java -version代表你安装的java的版本)和javac,若都正常运行则代表java已经正确安装。

验证jdk

点击【开始】菜单,收入cmd进入命令模式,输入“java -version”可以查看安装版本

注释

java规范有三种注释方式

        单行注释

        多行注释

        文档注释

什么是单行注释和多行注释

//这是单行注释

/*

*这是多行注释

*/

单行注释和多行注释的作用

1.对说写的程序进行解释说明,增强可读性,方便自己,方便别人

2.调试所写的代码

单行注释和多行注释的特点:

单行注释和多行注释,注释了的内容不参与编译。换句话说,编译以后生产的.class结尾的字节码文件中不包含注释掉的文字或者信息

文档注释(java特有)

文档注释格式

/**

@author 指定java程序的作者

@version指定源文件的版本

**/

注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档。

操作方式(小黑窗口)

javadoc -d myHello -author -version Helloava.java

多行注释使用的注意点

多行注释不能嵌套使用

Java API的文档

API是JAVA提供的基本编程接口

JAVA语言提供了大量的基础类,因此Oracle也为这些基础类提供了相应的API文档,用于告诉开发者如何使用这些类,以及这些类里包含的方法。

下载API

https://www.oracle.com/technetwork/javase/downloads/index.html

JDK8的下载地址:Java Development Kit 8 Documentation

JDK17离线下载地址为:https://www.oracle.com/java/technologies/javase-jdk17-doc-downloads.html

点击 Download

进行下载离线版本。

解压之后, 可以看到文档详细内容。 进入到 docs 目录。 index.html 就是文档主页。 直接用浏览器打开就好了。

打开之后的效果, 和上面在线的 API 文档是一致的。推荐使用该方式进行查看 API。用于开发和调试。

我们学习的时候, 不可能是从 API 文档的最顶部往下学习。 这样学习的效率太低。 就相当于你要背单词从 abandon 开始。然后再也走不出去。

从 JDK 9 开始,JDK 都是模块化的工程。 所以 Java 开发者就根据功能而已进行了模块化的划分。

学习任何一个技术, 首先就是要看技术的相关介绍, 并且是大局观的介绍。 只有这样你才能知道这个技术是什么, 能做什么, 能做成什么样。 看文档也是。

我们简单的翻译一下文档:

一开始说了本文档主要包含两部分的内容。

一部分是 Java SE,另一个部分是:JDK

Java SE

Java 平台标准版 (Java SE) API 定义了用于通用计算的核心 Java 平台。 这些 API 位于名称以 java 开头的模块中。

Java SE 主要包含以下模块:

JDK

Java 开发工具包 (JDK) API 特定于 JDK,需要注意的是该模块不一定在 Java SE 平台的所有实现中都可用。也就是说不同版本的 JDK 针对这些模块接口实现是不一致的。使用的时候需要注意。 这些 API 位于名称以 jdk 开头的模块中。

JDK 主要包含以下模块:

除了这两部分, 还有一部分是只有一个内容就是和智能卡相关的。

需要注意的是:当前描述适用于 JDK 11+ 的版本。 主要以 JDK 17 的版本进行讲解描述。

几种检索方式:

index: 这里可以查看指定字符开头的类和接口。

如果想看所有的。 可以使用 All Classes and Interfaces 。

打开之后的页面为:

这个时候, 可以通过右侧的 search 进行搜索。 如果只记得某个类的开头, 或者其中一部分。 可以使用这个快速的定位到你需要的内容上。

我们看一下之前错误的提示异常类。 NoClassDefFoundError

从这可以看到他是在 java.lang 的下面。 并且 java.lang 是在 java.base 的模块下, 一次记不住没关系, 多看多练几次就熟能生巧了。

第一个Java程序的总结

1.java程序编写-编译-运行的过程

编写:我们将编写的java代码保存在“.java”结尾的源文件中

编译:使用javac.exe命令编写我们的java源文件。格式:javac源文件名.java

运行:使用java.exe命令解释运行我们的字节码文件。格式:java 类名

2.在一个java源文件中可以声明多个class。但是,只能最多有一个类声明为public的。

而且要求声明为public的类的类名必须与源文件名相同。

3.程序的入口main()方法。格式都是固定的。

public static void main(String[]args){

        //public static void main(String a[]){//arguments:参数

}

4.输出语句

System.out.print();//只输出数据

System.out.println();//先输出数据,然后换行

5.每一行的执行语句都会以";"结束

6.编译过程:编译以后,会生成一个或者多个字节码文件。字节码文件的文件名与java源文件中的类名相同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值