003 01 Android 零基础入门 01 Java基础语法 01 Java初识 03 Java程序的执行流程
003 01 Android 零基础入门 01 Java基础语法 01 Java初识 03 Java程序的执行流程
Java程序长啥样?
首先编写一个Java程序
记事本编写程序
打开记事本
1、win7下步骤:
开始
搜索框中输入“notepad”
单击notepad

2、win10下步骤方式一:
同时按“win+x”,点击“运行”

运行界面的打开框中输入“notepad”,点击“确定”

3、win10下步骤方式二:
同时按“win+q”,选择“应用”,输入“notepad”,点击“记事本”

4、win10下步骤方式三:
同时按“win+r”,运行界面的打开框中输入“notepad”,点击“确定”

win10下的步骤方式三最简单一些
记事本中编写Java 程序
这是大家第一次接触Java程序
开始编写
以后我们会知道,HelloImooc是类(Java中的类)的名字,也是稍后我们需要保存的文件名。

然后一对大括号,大括号中是类的内容

然后写一个主方法,主方法就是程序执行的入口,程序就是从这里开始执行的。
主方法按照下图中的格式写,一字不差即可:

在主方法中输出一句话:Hello,imooc!,这句话用英文的双引号“”引起来。

下面,我们就把这个文件进行保存
记事本中保存Java 程序
选择:文件,另存为

比如,我们将文件存到E盘下的Java文件夹目录下。这时,我们要注意下,如何去存储?

记事本中第一种保存Java程序的方式
第一种存储方式是:写一个双引号,注意是英文的双引号。

之后,在双引号中写入文件的名字。文件的名字写什么呢?前面提到过,文件名需要和文件内容中class后所跟的单词名称一致,同时注意:要跟上后缀 .java

因为默认情况下,文件是一个.txt格式的文本文件,加上“.java”后缀之后,就变成了一个Java文件,而不是文本文件了。
点击“保存”

之后,转到盘下的Java文件夹目录下,就出现了一个文件:HelloImooc.java

提示一下(这也是程序员使用windows电脑的基本习惯),为了避免出错,我们要看一下电脑中的扩展名是否被隐藏了:
win7中:
打开一个文件夹目录,依次点击“组织”,“文件夹搜索选项”

点击“查看”,下划找到“隐藏文件和文件夹”,
默认是选择“不显示隐藏的文件、文件夹和驱动器”,我们点选“显示隐藏的文件、文件夹和驱动器”。
默认是勾选“隐藏已知文件类型的扩展名”的,我们去掉勾选

win10中:
我们任意打开一个文件目录,在管理菜单的顶部,单击“查看”,勾选上“文件扩展名”和“隐藏的项目”

这样操作之后,我们看到,HelloImooc文件的扩展名就是.java,是没有问题的。

有时候,如果我们没有注意,保存错了,可能出现“HelloImooc.java.txt”这种形式(后缀多了.txt),所以一定要注意,要将电脑文件的扩展名取消隐藏。
除了写一个在双引号中写名称之外,还有一种保存方式
记事本中第二种保存Java程序的方式
依次点击:文件、另存为
输入文件名:HelloImooc.java
保存的时候,保存(文档)类型选择“所有文件”

这是保存Java文件的2种方式,需要注意,否则,后面编译的过程中,就可能出现找不到Java文件的情况。
程序写好以后,如何去执行程序,在控制台输出:Hello,imooc 呢?
执行Java程序
打开控制台
win下的搜索框中,输入:cmd,之后回车

或者最简单的方式:同时按“win+r”,打开运行窗口,输入“cmd”后点击确定即可

首先调大命令行cmd窗口的字体:
点击窗口左上角的标志,选择“属性”,然后点击“字体”,之后调大字体即可


之后,如何执行Java程序呢?
控制台中编译和执行Java程序
因为,我们的Java文件HelloImooc.java文件是在E盘的Java文佳夹下,所以我们首先要做的就是cmd中目录转到E盘的Java文佳夹下。
如何转呢?
需要知道几个cmd下的一些命令:
进入E盘,输入:e: 引文下的冒号

转到Java目录下,输入:cd java
cd命令是用来转到某一个指定目录下的,注意:命令中的目录名是不区分大小写的


但是,编写Java程序时,Java中的所有内容都是区分大小写的
进入目录后,做什么呢?就是要编译Java程序。前面内容踢到多,执行Java程序有2个步骤:
1、第一步是编译
2、第二步是解释执行
那编译用什么呢?编译用javac命令
命令格式:
javac + Java文件名(即Java类名).java

注意:javac命令要注意区分大小写的

这时,给了我们一个提示,“‘javac’不是内部或外部命令,也不是可运行的程序活批处理文件”
说白了,就是不知道javac是什么?
前面的内容,我们已经安装完成JDK了,为什么仍然没有作用无法识别javac命令呢?因为少了一步:配置环境变量
那如何配置环境变量呢?
配置Java环境变量
依次:计算机点击右键、属性、高级系统设置、高级、环境变量
(这里有很多环境变量,有用户环境变量,有系统环境变量;很多教程中有要配很多环境变量的,其实我觉得我们这里配一种环境变量就好了,因为我们后面大部分的开发都是在工具下进行的。)


找到系统环境变量中的path,点击编辑,在其变量值中加入我们自己的环境变量值,即jdk的安装目录下的bin文件夹



jdk安装路径下的bin文件夹里面的javac.exe和java.exe
javac.exe就是我们刚才在cmd命令行窗口中输入的编译程序的命令
java.exe是我们用来解释执行程序用的


所以,我们就明白了,配置这些环境变量,向path中添加环境变量值,即添加bin文件夹目录路径的目的就是:让这些编译解释执行java程序的命令可用。
所以,我们把这个jdk安装路径下的bin文件夹的目录复制一下

如何添加环境变量值呢?
切记不要删除path的变量值
而是在pah变量值的末尾写一个分号(分号的作用是把不同的环境变量值进行分隔)

之后粘贴刚才拷贝jdk安装路径下的的bin文件夹的目录:c:\java\bin

之后,确定、确定、确定


这样,我们的环境变量就配置好了,那是不是就可以在cmd中用javac命令了?
编译Java程序
打开cmd命令行窗口,依然输入命令:
javac HelloImooc.java

为什么依然提示不认识javac命令,javac依然不能使用?
这里,也是一个需要提醒大家注意的问题:设置完环境变量之后,命令行需要重启

关闭cmd窗口重新打开再输入命令即可
如果想知道文件夹下都有哪些文件,使用dir命令即可

执行编译命令:
javac HelloImooc.java
执行完后,发现啥也没有?没有任何报错,也没有任何提示

我们回到Java目录下, 发发现生成了一个HelloImooc.class文件。该文件即我们之前提到过的:二进制字节码文件。

所以,经过亲自编码并命令执行,发现:Java编译过程中确实会生成二进制字节码文件。
生成字节码文件之后,Java执行流程的第二步就是: 解释执行
解释执行Java程序
用到的命令是:java命令
命令格式:
java + Java文件名(即Java类名) 不需要加后缀
所以,我们输入命令:
java HelloImooc
回车,发现cmd窗口控制台输出了结果:Hello,imooc! 即我们程序中编写的输出内容,没有任何问题。


这就是Java程序的执行流程
003 01 Android 零基础入门 01 Java基础语法 01 Java初识 03 Java程序的执行流程的更多相关文章
- # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结
095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 04 static关键字(续)
094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 03 static关键字(下)
093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 02 static关键字(中)
092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 01 static关键字(上)
091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 04 使用包进行类管理(2)——导入包
090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 使用包进行类管理(1)——创建包
089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现
088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...
- 087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点
087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点 本文知识点:封装的概念和特点 说明:因为时间紧张,本人写博客过程中只是对 ...
随机推荐
- Labview学习之路(五)按钮的机械动作
布尔类型中有一个按钮是非常重要的控件,他不是只是表示一个确定,输出0或1,下边我们共同探讨一下他的机械动作 单击时转换 释放时转换 保持转换直到释放 单击时触发 释放时触发 保持触发直到释放 单击时转 ...
- Mysql如何将某个字段的值,在原有的基础上+1?
Eg: 电商项目中,需要统计某件商品的购买数量问题,这时产品提了一个bug,告诉你我需要你做一个购买数量统计?你会怎么做呢? 这里我只说我自己的思路,首先是浏览加购物车,创建订单并支付,mq消息消费后 ...
- [] !== [] is true
这周工作看见一个小伙伴给我私信发了这样的一个问题,我深剖了一下,希望大家能早点脱掉这个坑. Question: 如果定义了一个空数组,在开发过程中经常会做这样的一个判断,就是这个数组里发生变化不再是空 ...
- android Studio(3.2.1) NDK配置
1.创建as工程 2. 创建class类 3. 生成头文件 3.1 配置命令工具 添加工具: 配置工具: Program: $JDKPath$\bin\javah.exe Arugments:-d j ...
- 1.OpenGL mac开发环境搭建记录
1.安装GLEW 和GLFW,转摘至:https://www.cnblogs.com/pretty-guy/p/11357793.html 2.开始测试,整个工程报错,关键信息如下: code sig ...
- web前端常见安全问题
1,SQL注入 2,XSS 3,CSRF 4.文件上传漏洞 1,SQL注入:这个比较常见,可能大家也听说过,就是URL里面如果有对数据库进行操作的参数时,要做一下特殊的处理,否则被别有用心的人利用的话 ...
- require exports module.exports
require 用于引入模块(js文件). JSON.或本地文件 自己写的模块必须是相对路径,省略了node就认为该自定义模块(js文件)是核心模块(内置模块或者第三方模块) node 有模块作用域 ...
- 高可用服务之Keepalived基础入门
前面我们聊了聊高可用集群corosync+pacemaker的相关概念以及相关工具的使用和说明,回顾请参考https://www.cnblogs.com/qiuhom-1874/category/18 ...
- Tomcat cluster方案共享session配置成功,yeah....
后继版本:https://www.cnblogs.com/xiandedanteng/p/12143112.html 参考网文: 1.Tomcat官方文档 2.https://blog.51cto.c ...
- layui表单引入ueditor遇坑记
1. 错误示例:表单容器是div标签则无法获取ueditor的内容 注:对于普通的表单元素表单容器是div也都能获取 <!DOCTYPE html> <html> <he ...