目录
一、初识Java
1.Java版本
* JavaSE 标准版 (基础版本,用于学习)
* JavaEE 企业版 (主攻方向)
* JavaME 微型版
2.Java语言的特性【开源、免费、跨平台、面向对象】
*简单性 :
例如c++中有指针,Java屏蔽了指针的概念,相对来说是简单的
*面向对象:
更符合人的思维,容易理解
*可移植性:
编译一次、到处运行,也就是说在window上运行的Java程序可以直接拿到Linux上运行【跨平台】
原理:让Java程序运行在Java虚拟机上【JVM:Java虚拟机,在JRE中,JRE又包含在JDK中】
*多线程
多任务同时执行
*健壮性
垃圾自动回收机制,简称GC机制
*安全性
开源(众人拾柴火焰高)
二、JDK的介绍与安装
1.JDK、JRE、JVM
JDK:Java开发工具包(Java软件开发必不可少的工具)
JRE:Java运行环境【包含在JDK中】
JVM:Java虚拟机 【包含在JRE中】
JDK中所有的命令都在Jdk\bin目录下
2.JDK编译、运行Java文件
Java程序运行包含两个非常重要的阶段
1.编译阶段
2.执行阶段
*编译阶段:检查Java程序是否符合Java语法
在xxx.java源文件写好后,通过JDK中自带的Javac.exe命令编译Java文件,符合Java语法则会生成
xxx.class字节码文件,即可执行的Java文件【xxx.java---(javac)--->>xxx.class】
*javac使用规则: javac xxx.java路径
*编译过程:
>写好xxx.java文件(将记事本的后缀改为.Java)
>打开dos命令窗口
>javac xxx.java路径
>生成xxx.class字节码文件
*********************************************************************************
*********************************************************************************
*运行阶段
在生成xxx.class文件后,通过JDK中自带的Java.exe(类加载器)命令在JVM上运行Java文件
*java使用规则: java 类名【xxx.class==类名.class】
运行过程:
>打开dos命令窗口
>用cd命令切换到xxx.class目录下
>java 类(a)
>java.exe命令启动JVM,JVM启动类加载器ClassLoader
>ClassLoader去硬盘上搜索a.class文件,找到后将a.class字节码装载到JVM中
>JVM将在字节码解析为二进制数据
>操作系统执行二进制数据与平台进行交互
3.JDK的下载
2.网盘下载:Windows64位:
链接:https://pan.baidu.com/s/16HhuvmQ4BvEHCZ6YXoxbAQ
提取码:ugg9
Windows32位:
链接:https://pan.baidu.com/s/10Fu_AB02h1t098Swzhk5wA
提取码:ldm1
问题:
JDK安装好之后我们可能仍然无法运行Java文件,如果你的JDK安装目录不在window dos命令窗口默认的路径下(通常默认为 C:\Users\Administrator),将无法找到Jdk 中我们所要用到的命令。那么每次运行Java文件时将要先用cd命令切换到JDK的安装目录下才可以运行Java文件,而且在运行阶段如果Jdk 没有和.class文件在相通目录还会产生目录冲突,非常的麻烦。这也是为什么我们要配置环境变量的原因
这里给大家普及一下window操作系统是如何搜索硬盘上的某个命令的
*首先在当前路径下搜索
*搜索不到的话再从环境变量path指定的路径搜索
*都搜索不到则报错
三、Java环境变量的配置
1.先右击此电脑(win10),然后点击属性。
2.然后找到右边的高级系统设置
3.找到高级,点击下方的环境变量
4.新建系统变量
变量名:JAVA_HOME
变量值:我们一开始安装jdk的地址(直接找到复制粘贴即可)
5.再新建一个系统变量
变量名: CLASSPATH
变量值: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(复制过去)
6.找到“用户变量”里面的path,然后点击path新建两个变量值
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin
7.最后这些界面都记得点确定
8.验证环境变量是否配置成功
打开dos窗口,输入javac,如没有报错且返回一大串文字则表示安装成功
到此我们就可以不用编程软件直接在记事本里面编写我们的第一个Java程序了
四、我的第一个Java程序
1.Java程序的基本结构
【 public 公开的】
【 class 类 】
【 Hello 类名 】
public class Hello { //定义一个公开的类
//这里面是【类体】
//类体中不允许直接写入Java语句,声明变量除外
public static void main(String[] args) {//这是一个程序程序的主方法,是Java程序的入口
//这里面是【方法体】Java语句
}
}
2.Java程序中的注释
注意:Java中的注释只存在于源文件中,不会被编译到xxx.class文件中
*单行注释: // Java注释
*多行注释: /* Java注释 */
*javadoc注释:
/**
*javadoc注释:【任何写在javadoc里面的注释在编译时会与.class字节码文件
同时成一个帮助文档】
*javadoc注释
*/
3.输出语句-sout
public class Hello {
public static void main(String[] args) {
System.out.println("helloword");
// sout:向控制台输出一段字符串
// 注意:这里的双引号是半角的
}
}
4.public class与class的区别
*************************************************************************************
//这是一个Hello.java源文件
//定义一个公开的类Hello
public class Hello{
public static void main(String[] args){
System.out.println("helloword");
}
}
//定义一个类a
class a{
public static void main(String[] args){
System.out.println("helloword");
}
}
//定义一个类b
class b{
public static void main(String[] args){
System.out.println("helloword");
}
}
//定义一个类c
class c{
public static void main(String[] args){
System.out.println("helloword");
}
}
**************************************************************************************
上面的Hello.java源文件是没有错误的,据此我们可以得出
1.public class的类名必须与源文件(xxx.java)名字一样,所以一个源文件中只能定义一个 public class公开的类
2.class的类名可以不与源文件(xxx.java)相同,所以一个源文件中可以定义多个class,每个 class编译后都能生成独立的xxx.class字节码文件
3.Java源文件中public class不是必须的
4.无论是public class还是class都必须要有主方法