Java的诞生历史
- 简单说一下java的历史,嫌烦燥可以跳过。
- 1972年C语言横空出世,风靡全球。但是起强大的指针功能和开放的内存管理功能,让很多开发者学习成本高,也不断踩雷。
- 1982年,C++诞生,加入了面向对象的功能,并且兼容C语言。在图形、游戏领域有着出色的成绩。
- 在这个时候,就有人提出了一种新设想,要创造一门新语言,这个语言要包含以下特性:
- 语言和现有的C要相似;
- 不需要开发者操控指针;
- 不需要开发者管理内存;
- 实现真正的可移植性:一次编写、到处运行;
- 是面向对象的语言;
- 类型要是安全的;
- 要提供一套高质量的类库。
- 1995年由Sun公司(现属Oracle)发布。
- 1995年网页简单粗糙,缺乏互动性。Java的图形界面程序(Applet)体验相对友好,所以Java火了起来。
- 1998年,Java从三条线发发展:
- J2SE:java2标准版(发展桌面端)
- J2ME:java2移动版(发展手机端)
- J2EE:java2企业版(发展服务器端)
- 最终只有服务器端被很多人喜爱
- 2006年,Hadoop出现,带着Java走进了大数据领域
- 2008年,Android出现,带着Java走进了手机端
环境搭建
下载jdk
-
java作为一门编程语言,首先要有开发和运行环境,java的开发环境叫做jdk、运行环境叫jre。
- 因为开发环境是需要运行环境的,所以jdk中是包含jre的。
-
jdk有很多厂家,使用的最多的就是oracle版本的,但是在8u201/202之后的版本变成了收费版本。
-
在官网中根据自己的操作系统以及芯片架构,选择合适的版本,一路安装即可。本文使用jdk8版本。

-
如果要用新版本,所以也可以采用免费的openJdk。
-
课外话题:不管安装哪个,都可以选择用scoop的方式安装:scoop配置以及安装openJdk
-
安装的时候,要记住自己安装的位置,例如:安装在 D:\java_data\java\jdk1.8.0_191

验证
- win + R,输入 cmd 回车,打开控制台

- 切换到安装jdk的目录
- d:是为了切换盘符
- cd:是切换文件夹
- 此时已经在java目录了,然后进入到java的bin目录
- 命令中的 . 代表当前位置
- bin目录是存放java执行文件的位置,可以在文件管理器中查看,里面全都是exe后缀的可执行文件

- 接着在刚才的控制台中,输入java 然后回车,相当于执行这个位置的 java.exe

- 出现类似这样的返回,就说明执行成功了

- 查询一下安装的java版本信息:java -version

- 现在想一个问题:每次想执行程序都必须切换到这个目录,有没有什么办法可以不切换目录就可以执行呢?
- 有的,那就是配置环境变量
- win的环境变量,可以把这个目录设置为全局命令,可以在任何控制台直接执行
配置环境变量
- 为什么配置环境变量,因为要在任意位置运行java程序
- 如果是使用scoop安装的,会自动配置好环境变量
- 如果是安装包安装的,需要配置环境变量
- 有的版本自动配置,按这个步骤检查一下有没有


- 有的版本自动配置,按这个步骤检查一下有没有
- 创建 JAVA_HOME 变量,文件位置输入jdk所在目录(这里如果在安装时已经自动安装了,那么下面就不用配置了)

- 在path中,输入jdk下的bin目录,以及jre下的bin目录

- 验证是否安装成功:win+R 输入cmd打开控制台,在控制台中直接输入 java -version ,如果能打印出版本号,说明配置成功了

第一个程序
-
代码现在看不懂是正常的,先来体验一下
-
做一个程序,让他打印一句:Hello World!
-
现在,随便创建一个文件夹 -- 右键 -- 新建文本文档

- 必须能看到这个 .txt ,如果你看不到,需要在文件管理器中打开 文件扩展名:

- 必须能看到这个 .txt ,如果你看不到,需要在文件管理器中打开 文件扩展名:
-
打开这个新创建的文件,把下面内容复制过去
public class Demo { public static void main(String[] args) { System.out.printf("Hello World!"); } }
-
关闭文件,给他重命名:Demo.java

-
点击空白位置,在终端中打开

-
编译文件:javac demo.java

-
此时文件下会生成一个 Demo.class 文件,这个就是编译后的文件

-
使用java程序,运行这个编译后的文件

此时可以控制台打印出了我们想要的文字
问题解答
问:上文中的 javac是什么?
答:是编译,将我们写的代码编译成机器能够看懂的的指令
问:代码中的第一行:public class Demo ,这个Demo必须和文件名一致吗?
答:对的,这个叫类名,public class 后面的类名必须和文件名一致
问:代码中的第二行:public static void main(String[] args) 这个是什么
答:他是程序的入口,可以先理解为是一个固定的指令,程序从这里开始执行
问:代码中的第三行:System.out.printf("Hello World!");这个是什么
答:System.out.printf 是一个固定的指令,它会将后面括号中的内容打印到控制台上
代码拆解
- 接下来详细拆解一下每个关键词,当前阶段不用特别理解,后续时机到了都会说明
- public:代码权限关键词,指 公共的
- class:类关键词
- static:静态关键词
- void:方法返回值类型中的一种,表示无返回值
- main:这是一个方法名,表示主程序的入口
- String:一种类型,表示字符串
- String[]:字符串数组
- System.out.printf:这是一个固定的输出函数
- System:系统类
- out:输出流对象
- printf:格式化输出方法
安装IDEA开发工具
- 推荐选用JetBrains 的 IDEA作为开发工具
- JetBrains 的 IDEA,下载地址:https://www.jetbrains.com/idea/download/。下载好后根据提示安装即可
- 也可以选择scoop进行安装:scoop配置以及安装IDEA
创建一个程序
- 打开新建项目
- 位置:自己选择合适的文件夹,代码会保存在这里
- jdk目录会自动识别,如果没有识别到需要自己手动选择

- 创建之后,会自动生成Main方法

- 点击绿的三角运行,查看运行结果,打印了这个说明环境没问题

