基础知识
1.1 Java的发展史
1991年sun公司提出,创始人为詹姆斯.高斯林(程序可在内存和芯片较小的情况下运行)。
1995年正式发布。
2009年被orcale(全球最大信息管理软件及服务供应商)收购。
最初叫Oak语言。
更新频率:现今每半年更新一次。
1.2 Java领域
可用于应用软件,服务器端程序,安卓应用,嵌入式,大数据框架。
1.3 Java语言的特点
目前重点学到的两个特点:
开源性:即源代码开放且免费,可以直接在orcale官方下载JDK
平台无关性:即开发出来的Java程序可以在不同的操作系统上运行。
在不同的平台上开发不同的虚拟环境,因此一套程序可以在不同平台上运行。
Java程序与平台无关,但虚拟环境和平台相关。-
1.4 Java如何实现跨平台
Java具有平台无关性,利用JVM(Java virtual machine)实现跨平台,不同的平台需要不同的JVM。
1.5 Java的运行机制
编写源代码-->工具包jdk-->.class(标准字节码文件)-->JVM-->机器码
先编写出源代码,使用JDK将源代码编译成.class类文件,再用JVM运行类文件转换成机器码。
容易联想到代码写完后总会说到编译运行。
1.6 JDK,JRE,JVM及三者之间的关系
JVM(Java Virtual Machine) 虚拟机即运行的虚拟环境
JDK(Java Development Kit) Java开发工具包
JRE (Java Runtime Environment) Java运行环境
JRE和JVM都属于运行环境,JRE范围比JVM范围大,JRE包括JVM还包括Java运行程序的核心类库。
环境应该属于开发Java的工具,所以JDK范围应该最大。所以JDK包括JRE。
![](https://i-blog.csdnimg.cn/blog_migrate/bb3d9f09a07cc67a0e2f03d3a826c93d.jpeg)
1.7 Java语言体系结构
Java SE (Standard Edition):标准版,包含Java语言核心的类。类库-->函数库
Java EE (Enterprise Edition):企业版,除了包含标准版的类,还包括开发企业级应用的类。
servlet-->server+applet服务器端程序开发。
Java ME(Micro Edition):微缩版,已被安卓开发方向代替。
初学代码
public class A{
public static void main(String[]a){
System.out.print("你好");
}
}
2.1用命令窗口cmd和记事本编译运行
2.1.1编译
在cmd窗口输入 javac xx.java(本例为A.java)
错误1:
![](https://i-blog.csdnimg.cn/blog_migrate/4fca0d3b2bd5935b66e582b30210b765.jpeg)
原因:文件名称格式不对
解决方案:文件名后缀java须全小写。
错误2:
![](https://i-blog.csdnimg.cn/blog_migrate/1d84ea295405e8503b414a13a5a7d9e1.jpeg)
原因:代码system格式不对
解决方案:将system的首字母大写即可。
错误3:
![](https://i-blog.csdnimg.cn/blog_migrate/0c28155a407db723ce3add18da971545.jpeg)
原因:编码格式不对
解决方案:用记事本打开.java文件,将其另存为其他格式(注:不同格式对运行结果显示有影响)
![](https://i-blog.csdnimg.cn/blog_migrate/2bc9c0fbeb4bfb6920beb2d152f33868.jpeg)
正确:
![](https://i-blog.csdnimg.cn/blog_migrate/c8d1dd9ee1b566dadd9e4dff8d534d7d.jpeg)
2.1.2运行
编译后会在.java所在文件夹生成后缀名为.class文件即类文件,而后在cmd里输入java xx
(本例为java A)
错误1:找不到或无法加载主类
原因:环境变量path的值不正确。
解决方案:在此电脑里点击系统属性点击高级系统设置,修改环境变量里的变量path的值,找到jdk里的bin将其对应路径编辑进去即可。
![](https://i-blog.csdnimg.cn/blog_migrate/ffcadcae3d9f1c332c2cdbd7241f428e.jpeg)
个人因之前安装了jdk,同一电脑装了不同版本的jdk,且系统变量里的classpath值和Java值也有修改,将其删掉只修改上述path值即可。
错误2:
![](https://i-blog.csdnimg.cn/blog_migrate/dc543898d3512d3de2040414ef453fad.jpeg)
输出结果显示不对
原因:编译中提到的另存为的编码格式不对
解决方案:将其另存格式改为ANSI重新编译再运行即可。
正确:
![](https://i-blog.csdnimg.cn/blog_migrate/bcbf27b7cf96985826b9f1b0c16b1d65.jpeg)
2.2用(IDE)集成开发环境idea进行编译运行
步骤:
新建工程(new->project)->选择java,点击next->命名文件选择路径->点击finish
编写源代码
编写完成后右键选择"Run......".查看运行结果。
![](https://i-blog.csdnimg.cn/blog_migrate/923890e0ccabdd822ab66b425e7ab1c4.jpeg)