写点什么

一文回顾 Java 入门知识(上)

用户头像
逆锋起笔
关注
发布于: 2021 年 06 月 02 日
一文回顾 Java 入门知识(上)

Java 前世今生

Java 最早是由 SUN 公司(已被 Oracle 收购)的詹姆斯·高斯林(高司令,人称 Java 之父)在上个世纪 90 年代初开发的一种编程语言,最初被命名为 Oak,目标是针对小型家电设备的嵌入式应用,结果市场没啥反响。谁料到互联网的崛起,让 Oak 重新焕发了生机,于是 SUN 公司改造了 Oak,在 1995 年以 Java 的名称正式发布,原因是 Oak 已经被人注册了,因此 SUN 注册了 Java 这个商标。随着互联网的高速发展,Java 逐渐成为最重要的网络编程语言。

Java 介于编译型语言和解释型语言之间。 为了保证不同平台、不同公司开发的虚拟机都能正确执行 Java 字节码,SUN 公司制定了一系列的 Java 虚拟机规范。从实践的角度看,JVM 的兼容性做得非常好,低版本的 Java 字节码完全可以正常运行在高版本的 JVM 上。

随着 Java 的发展,SUN 给 Java 又分出了三个不同版本:

  • Java SE:Standard Edition

  • Java EE:Enterprise Edition

  • Java ME:Micro Edition

这三者之间有啥关系呢?

简单来说,Java SE 就是标准版,包含标准的 JVM 和标准库,而 Java EE 是企业版,它只是在 Java SE 的基础上加上了大量的 API 和库,以便方便开发 Web 应用、数据库、消息服务等,Java EE 的应用使用的虚拟机和 Java SE 完全相同。

毫无疑问,Java SE 是整个 Java 平台的核心,而 Java EE 是进一步学习 Web 应用所必须的。我们熟悉的 Spring 等框架都是 Java EE 开源生态系统的一部分。

名词解释

  • JDK:即 Java Development Kit(java 开发工具包)

  • JRE:即 Java Runtime Environment(Java 运行环境,主要构成是运行 Java 字节码文件的 JVM,即 Java Virtual Machine)

二者关系如下:

简单地说,JRE 就是运行 Java 字节码的虚拟机。但是,如果只有 Java 源码,要编译成 Java 字节码,就需要 JDK,因为 JDK 除了包含 JRE,还提供了编译器、调试器等开发工具。

环境配置

学习任何一门编程语言,都有前辈们推荐的IDE或者官方的开发工具,还有运行环境的配置,这都是必须的。小编这里选择的IDEA 2021jdk8

JDK 下载与安装

1、下载

官网下载链接:https://www.oracle.com/java/technologies/javase-downloads.html

小编这里使用的 jdk8 版本,是目前使用较多较稳定的版本,推荐使用。如果自己无法下载的可以访问这里提取哈:https://pan.baidu.com/s/1tb1AG-FBHpYRsw0Q5U9YLw 提取码:3kwk

2、安装

小编以 win10 系统为例,下载好后解压即可,小编的是无需安装版本。解压的路径需要注意:不要使用带有中文的路径 。此外,强烈建议:把自己电脑的盘符名称和账户名都修改为英文,或者拼音,这样就会避免一些奇怪的问题,虽然这些问题可能到后面安装数据库或者其他软件才会出现,但是程序的世界是不认识汉字的。

3、配置环境

桌面此电脑,按照如下操作顺序:鼠标右键-->属性-->高级系统设置-->高级-->环境变量:

选择环境变量后,我们可以看到如下界面,此时再选择系统变量-->新建,此时将会弹出新建系统变量的对话框,在变量名处输入 JAVA_HOME,在变量值中输入 JDK 的安装路径(小编的 jdk 就是解压后的目录),点击确定。

我们还需要修改系统Path变量。在变量后增加如下两条路径:

%JAVA_HOME%\bin%JAVA_HOME%\jre\bin
复制代码


新建/修改CLASSPATH变量

如果存在 CLASSPATH 变量,选中点击 编辑。如果没有,点击 新建。

输入/在已有的变量值后面添加:

变量名:CLASSPATH变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
复制代码


验证是否安装成功

通过快捷键Win+R 并输入cmd 调出命令行窗口

输入java,如果能出现类似下图信息,就说明配置成功了。

然后依次输入命令javacjava -version命令,如果没有报错信息就是 ok 的,其中后一个命令是查看你的 jdk 版本号的,如果时间长了忘记当时安装的哪个版本 jdk,就可以通过此命令来查看。

IDEA 下载安装

下载地址:https://www.jetbrains.com/idea/download/#section=windows

小编这里选择的Ultimate版本 64 位,一般下载的时候机会智能识别当前的电脑系统,小编下载的 exe 文件,还有 zip 格式的,可自行尝试哈。

安装就简单了,几乎都是一路next即可。这里建议大家不要把软件都习惯性的安装在 C 盘,这样 C 盘会越来越大,最后导致电脑很卡。

这里建议大家修改一下编辑区域的字体大小显示方法分割线。后者当你的方法比较多的时候,不容易区分方法的开始与结尾,尤其是在全部折叠方法的时候。

File-->Settings,然后参照下图修改即可:

修改编辑区域的字号

File-->Settings,然后参照下图修改即可:

显示方法之间分隔符

除了这两个最最基本设置外,其他根据个人偏好调整到自己使用起来最舒服即可。

Hello World 详解

这一部分网络上很多作者都把它放在了后面去讲解,因为涉及到的东西稍微多一点,这里指的是名词,这对于新手来说,理解起来是有困难的,但小编仔细琢磨了下,在一开始讲解其实也完全没有问题,听一听总是有好处的,最起码心里有个低了。

编写第一个 Java 程序

新建第一个 java 程序: File-->New-->Project(在这一步就可以看到我们安装的 jdk)-->Next-->Next-->会看到如下界面:

Project name 就是我们创建的工程名字,自己命名即可,推荐英文或者拼音。Project location 我们创建的工程放在电脑的哪个地方,推荐不要使用带有中文的路径。

接着就是finish了,我们会看到如下界面:

这是系统默认提供的内容,前期我们主要的工作都是在src这个目录下,下面以新建第一个 java 程序为例:在src右键,依次选择 new-->Java Class-->输入要新建的类名(类名的命名规则本文后面会讲)-->回车即可。

比如小编这里输入的类名是MainHello

public class MainHello {    }
复制代码

这一步相当于一个 java 文件创建好了,但是没有系统执行的函数入口,这个入口暂时可以理解为现实生活中某个场景的入口(比如:景点的门票入口),只不过 Java 文件的入口有且仅有一个,接下来我们就创建这个入口函数:

可以使用快捷输入main+回车即可快速生成这个方法:

修改这个快捷输入其实也很简单,其实就是去掉了默认的智能提示限制(默认只有大写的首字母,才会提示完整的系统类和关键字等)

生成后方法如下:

public class MainHello {
    public static void main(String[] args) {            }}
复制代码

这个时候就会看到绿色的运行按钮出来了,这就是系统默认认识的入口,接下来我们所学习的内容都会在这里进行。小编首先在这里使用系统提供的输出语句,输出咱们熟悉的Hello World

public class MainHello {
    public static void main(String[] args) {        System.out.println("Hello World");    }}
复制代码

然后点击运行即可看到结果。

解析

这里对 Java 程序的入口,也就是主函数进行简单的解析,首先看下图不同颜色标注的矩形

  • public 这个在 java 中叫修饰限定符,初次之外还有privateprotecteddefault(默认不写就是这个),其作用分别是对类文件或者类文中的方法进行访问权限限定,通过下图便一目了然:

  • class 是 java 语言中的关键字,除此之外,还有很多关键字以及保留字,后者就是系统暂时不用但是保留着,说不定后面会用到,但是开发者不能用,比如:goto。了解如下这些即可:

java 语言中的关键字

  • MainHello 就是我们定义的标识符,在 Java 语言中,标识符的命名是有规则的:


    严格区分大小写

    不能以数字开头

    只能由字母、数字、下划线、$其中一种或多种来组合完成

    不能占用 Java 中的关键词和保留字

    要见名知意

    命名方式,推荐驼峰命名法(不是必须,是推荐)

标识符作用于类名方法名变量语句块,是我们最最常用的。

  • main(String[] args) 就是 java 中的函数形式之一:带一个参数的方法。java 中所说的函数和方法,其实是指同一个东西。Java 中的方法根据参数多少分两种:无参数方法有参数方法(参数的个数可以自定义),其中参数的类型也可以自定义的。

这里的 main 方法带有一个字符串数组类型的参数,这里又出现一个新名词:数组,在 Java 中数组根据维数不同可分为:一维数组多维数组

对数组的理解,可以简单理解为一个箱子里面装的台球,每个球上有编号是数组的特征,这在 Java 语言里叫做索引,索引是从 0 开始的,比如共有 10 个球,那么索引就是 0~9 。

小结对 Java 程序的入口牵扯到的相关内容就介绍到这里,具体内容后面还会详细讲解。

数据类型

java 语言中数据类型可以分为两大类:基本数据类型引用数据类型。通过下面这个导图大家就很清楚了:

进制

Java 中有四种表示整数的形式:十进制(我们平时使用的就是)、二进制、八进制、十六进制。

  • 二进制:以 0b 或 0B 开头,包括 0~1 的数字。

  • 十进制:包括 0~9 的数字。

  • 八进制:以 0 开头,包括 0~7 的数字。

  • 十六进制:以 0x 或 0X 开头,包括 0~9 的数字,以及字母 a~f,A~F。

进制转换

其他进制转十进制

公式:系数 * 基数的权次幂相加 (系数指每个数字,基数指的是多少进制,权指的是从右到左从 0 开始,次幂就是乘方)

例如:计算 0x100 的十进制值:

0x100 = 1*16^2 + 0 * 16^1 + 0 * 16^0
       =  16*16
       =  256
复制代码

十进制转其他进制

公式:除基(基数,也就是要转的进制)倒取余(余数)

例如:计算 60 的二进制:

变量

  • 存在内存中

  • 根据作用域分为:局部变量和全局变量

  • 声明规则:变量类型 变量名,比如:int stuAge

  • 变量赋值符:=

  • 变量使用规则:先声明,再使用

  • 变量默认值:基本数据类型有对应的默认值,引用类型默认值是null,布尔型默认值是false

常量其实是变量的一种特例。常量用final来修饰,它的值是不会被二次改变的,一般使用大写字母来定义。

总结

昨天看到一个关于编程的视频挺有趣,推荐大家看下https://youtu.be/dU1xS07N-FA

相信学 java 都知道这么一句话:一次编译,到处运行。那么它背后的原理是什么呢?

“Java 编译器不会将所有类都编译成一个机器代码程序。相反,它会独立编译每个类,而且不是编译成机器代码,而是编译成特殊的中间代码(字节码)。当程序启动时,该字节码被编译成机器代码。”


这就是为什么 Java 被广泛应用于诸多行业中,而且被越来越多的开发者作为首选学习语言之一。


小编特意创建了一个公众号:推荐学java,会分享与java相关的内容,并且以原创为主,欢迎大家搜索关注(关注即送小编挑选的精品视频教程),一起学 Java!

发布于: 2021 年 06 月 02 日阅读数: 89
用户头像

逆锋起笔

关注

公众号「逆锋起笔」主理人 2018.07.31 加入

程序视角,转射人生!

评论 (1 条评论)

发布
用户头像
jdk1.5以后就不需要再设置classpath这玩意了,
2021 年 06 月 03 日 09:36
回复
没有更多了
一文回顾 Java 入门知识(上)