基础常识
软件开发
软件:
一些列按照特定顺序组织的计算机数据和指令的集合
常见的软件:
系统软件(DOS、WINDOWS、Linux、IOS、Android等)
应用软件(扫雷、QQ、植物大战僵尸等)
人机交互
- 图形化界面:简单直观,易于接受容易上手操作。
- 命令行方式:需要一个控制台,输入特定的指令。较为麻烦,需要记住一些命令。
命令行方式,常见的命令:
dir(direction):列出当前目录下的文件以及文件夹
md(make direction):创建目录
rd(remove direction):删除目录
cd(change direction):进入指定目录
cd.. :退回上一级目录
cd/ :退回到根目录
cls :清除屏幕内容
del: 删除文件
exit :退出dos命令行
set : 查看环境变量的值,如set path 查看path的值。
start :以当前的配置新建一个dos控制台
Java概述
- 什么是计算机语言
人与计算机交流的语言,如C,C++,java等
java语言概述
- java是SUN(Stanford University Network斯坦福大学网络公司)在1995年推出的一门面向Internet的高级编程语言
- 以成为Web应用程序的首选开发语言。简单易学,完全面向对象,安全可靠,可跨平台。
java语言的三种技术架构
- J2EE(Java 2 Platform Enterprise Edition)企业版:是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如Servlet Jsp等,主要针对于Web应用程序开发。
- J2SE(Java 2 Platform Standard Edition)标准版:是为开发普通桌面和商务应用程序提供的解决方案。该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发,比如Java版的扫雷、记事本等。
- J2ME(Java 2 Platform Micro Edition)小型版:是为开发电子消费产品和嵌入式设备提供的解决方案。该技术体系主要应用于小型电子消费产品,如手机中的应用程序等。
java语言的跨平台性
- 什么是跨平台性:通过java语言吧编写的应用程序在不同的系统平台上都可以运行。
因为有了JVM,所以同一个Java程序在三个不同的操作系统中都
可以执行。这样就实现了Java程序的跨平台性。也称为Java具有
良好的可移植性。 - 原理:通过java虚拟机(JVM Java Virtual Machine)来翻译执行。
Java的环境搭建
什么是JVM,JRE,JDK
- JVM(Java Virtual Machine java虚拟机):在Windows、mac os、Linux下需要先安装该虚拟机,才能对java语言进行编译执行。就像Windows中的游戏模拟器一样。
- JRE(Java Runtime Environment Java运行环境):
包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。 - JDK(Java Development Kit Java开发工具包):
JDK是提供给Java开发人员使用的,其中包含了java的开发工具(包括编译工具javac.exe、打包工具jar.exe等),也包括了JRE。所以安装了JDK,就不用再单独安装JRE了。
简单而言:使用JDK开发完成的java程序,交给JRE去运行。
下载JDK
JDK(Java Development Kit Java开发工具包)下载官方网址:
www.oracle.com或者java.sun.com(实际上也是会跳转到www.oracle.com)
1. 选择下载选项,下载Java SE
2. 选择JDK
3. 同意申明并根据对应的系统配置下载jdk文件
下载完成的jdk如下:
安装JDK
- 双击下载好的jdk安装文件
- 记住安装的路径,后面配置环境变量需要用到。
- 建议:安装路径不要有中文或者特殊符号如空格等。
- 当提示安装JRE时,可以选择不安装
配置环境变量Path
- 为什么要配置环境变量Path?
在dos命令行中敲入javac,出现错误提示。
错误原理:当前执行的程序在当前目录下如果不存在,windows系统
会在系统中已有的一个名为path的环境变量指定的目录中查找。如果还没有找到,就出现以上的错误提示。
所以进入到jdk安装路径\bin目录下,执行javac。看到javac参数提示信息。
每次执行java的工具都要进入到bin目录下,是非常麻烦的。
那可不可以在任何目录下都可以执行java的工具呢?
根据windows系统在查找可执行程序的原理,可以将java工具所在路径定义到path环境变量中,让系统帮我们去找运行执行的程序。
- 配置环境变量Path的方法:
我的电脑–属性–高级–环境变量
编辑path环境变量,在变量值开始处加上java工具所在目录,后面用 “ ; ”和其他值分隔开即可。
- 验证是否成功
打开DOS命令行,任意目录下敲入javac。如果出现javac的参数信息,配置成功。这种配置方式,一劳永逸。
- Path的临时配置
必要性:如果在别人的电脑上临时做开发,需要用到环境变量又不想更改配置,这时候可以采用临时配置的方式:通过dos命令中set命令完成
• set :用于查看本机的所有环境变量的信息。
• set 变量名 :查看具体一个环境变量的值。
• set 变量名=:清空一个环境变量的值。
• set 变量名=具体值 :给指定变量定义具体值。
想要在原有环境变量值基础上添加新值呢?
• 首先,通过%变量名%操作符获取到原有环境变量的值。
• 然后加上新值后在定义给该变量名即可
• 举例:给path环境变量加入新值
• set path=新值;%path%
注意:这种配置方式只在当前dos窗口有效。窗口关闭,配置消失。使用当前配置新建窗口可以使用start
命令。
- 配置技巧
为了不因为jdk的目录或者目录名称的改变,而不断更改path的 值,而导致对path变量值的误操作,可以通过以下技巧完成。 - 新创建一个环境变量 JAVA_HOME 记录住jdk的目录。
- 在path中通过%%动态的获取JAVA_HOME的值即可。
- JAVA_HOME=F:\jdk1.6.0_01
- path=%JAVA_HOME%\bin;%path%
- %path%:动态获取path环境变量的值。
- %JAVA_HOME%:动态获取名称为JAVA_HOME环境变量的值。
Java程序开发体验–Hello World
编写步骤
- 将Java代码编写到扩展名为.java的文件中。
(注意:不要选择隐藏文件类型,否则无法扩展为java文件) - 通过javac命令对该java文件进行编译。
- 通过java命令对生成的class文件进行运行。
流程图如下:
步骤一:编写
- 选择最简单的编辑器记事本。
- 敲入代码
/*
需求:定义一个hello world小程序。
思路:
1,
2,
步骤:
1,通过class关键字定义一个类。将代码都编写到该类中。
2,为了保证该的独立运行。在类中定义个主函数。格式public static void main(String[] args)
3,保存成一个扩展名为java的文件。
4,在dos控制台中通过javac工具对java文件进行编译。
5,在通过java命令对生成的class文件进行执行。
*/
class Demo//定义一个类
{
//主函数。
public static void main(String[] args)
{
//输出语句。
System.out.println("hello world!");
}
}
- 将文件保存成Demo.java,这个文件是存放java代码的文件,称为源文件。
步骤二:编译
- 有了java源文件,将其编译成JVM可以识别的文件。
- 在该源文件目录下,通过javac编译工具对Demo.java文件进行编译。
切换到源文件所在的目录D:
,使用命令:javac Demo.java
- 如果程序没有错误,没有任何提示,但在当前目录下会出现一个Demo.class文件,该文件称为字节码文件,也是可以执行的java的程序。
步骤三:运行
java Demo
,可以看到程序的执行结果:
配置classpath
- 为什么要配置classpath
既然class文件(字节码文件)是java的运行文件,可不可以实现在任意目录下都可以执行某一目录下的class文件呢?答案是不可以的。
根据path环境变量的原理,可以定义一个名为classpath环境变量,将要运行的class文件所在目录定义在该变量中。 - 如何配置classpath
在环境变量中新建一个系统环境变量
变量名:classpath
变量值:.;D:\
其中,.
表示优先当前目录查找 - 配置完之后,测试无论在那个目录,都可以运行Demo
java虚拟机查找class类文件的顺序:
- 如果没有配置classpath环境变量,JVM只在当前目录下查找要运行的类文件。
- 如果配置了classpath环境,JVM会先在classpath环境变量值的目录中查找要运行的类文件。(查找顺序是从左至右)
- classpath值的结尾处如果加上分号,那么JVM在classpath目录下没有找到要指定的类文件,会在当前目录下在查找一次。
- 值的结尾出如果没有分号,那么JVM在classpath目录下没有找到要指定的类文件,不会在当前目录下查找,即使当前目录下有,也不会运行。
- 建议:配置classpath环境变量时,值的结尾处不要加分号,如果需要访问当前目录可以用 “.”表示。
- 一般情况下,如果class文件与java源文件在同一目录下面,是不需要用到classpath的配置的。但是以后随着包的引入,这个配置就有必要了。