01-JAVA入门
一、JAVA三大版本
- JAVA SE:它是JAVA的标准版,是整个JAVA的基础和核心,这是我们主要学习的一个部分,也是JAVAEE和JAVAME技术的基础,主要用于开发桌面应用程序。学会后可以做一些简单的桌面应用如:扫雷,连连看等。
- JAVA ME:它是JAVA的微缩版,主要应用于嵌入式开发,比如手机程序的开发。目前来说就业范围不是很广,在一些城市可能相对的不好找工作。
- JAVA EE:也叫JAVA的企业版,它提供了企业级应用开发的完整解决方案,比如开发网站,还有企业的一些应用系统,是JAVA技术应用最广泛的领域。主要还是偏向于WEB的开发,而JAVA EE的基础就是JAVA SE,所以我们在学习JAVA SE的时候,基础一定要打好,因为这是最基本的,也是最核心的。
二、JDK和JRE
-
JDK
Java 2 SDK (Development Kit)包含:JRE的超集,包含编译器和调试器等用于程序开发的文件 -
JRE
Java Runtime Environment (JRE) 包含:Java虚拟机、库函数、运行Java应用程序和Applet所必须文件Java运行环境的三项主要功能:
- 加载代码:由class loader 完成;
- 校验代码:由bytecode verifier 完成;
- 执行代码:由 runtime interpreter完成。
-
区别和联系:
sdk(也就是jdk)是jre的超集,是在jre的基础上增加了编译器及其他一些开发工具。jre就是java运行时环境,包括了jvm和其它一些java核心api,任何一台电脑,只有安装了jre才可以运行java程序。
如果只是要运行JAVA程序,只需要JRE就可以。 JRE通常非常小,也包含了JVM。如果要开发JAVA程序,就需要安装JDK。
三、JVM
JVM负责将java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。JAVA提供了另一种解释运行的方法JIT(just in time),可以一次解释完,再运行特定平台上的机器码,高级的JIT可以只能分析热点代码,并将这些代码转成本地机器码,并将结果缓存起来,下次直接从内存中调用,这样就大大提高了执行JAVA代码的效率。这样就实现了跨平台、可移植的功能。
- JVM是指在一台计算机上由软件或硬件模拟的计算机;它类似一个小巧而高效的CPU。
- byte-code代码是与平台无关的是虚拟机的机器指令。
- java字节代码运行的两种方式:
- 方式interpreter(解释)
- Just-in-time(即时编译):由代码生成器将字节代码转换成本机的机器代码,然后可以以较高速度执行。JAVA的跨平台实现的核心是不同平台使用不同的虚拟机不同的操作系统有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。
四、JAVA环境搭建
百度搜索JDK,找到下载地址,浏览Oracle的网站。
JDK下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
- 选择版本(采用JDK8)
- 同意协议(流氓协议)
- 查看电脑的环境(64位,还是32位等等)
- 下载安装包
- 安装JDK ,JRE (改安装目录,注意规范,作为一个程序人,规范很重要。所以给电脑上环境单独
分类最好,) - 配置电脑的环境变量 :
- 我的电脑-->右键--->属性
- 环境变量-->添加 JAVA_HOME (JDK的安装地址:D:\Environmentjavajdk1.8.0_201)
- 配置path:%JAVA_HOME%\bin ;%JAVA_HOME%\jre\bin
- 测试是否安装成功:
- 打开cmd(命令行窗口)
- 输出 java –version 查看版本信息,是否成功输出!
五、hello world
-
新建文件Hello.java
-
编写Hello.java
public class Hello{ public static void main(String[] args){ System.out.println("hello world"); } }
-
保存文件,使用javac编译代码
javac Hello.java # 生成一个新的文件Hello.class
-
运行代码
java Hello
编写 Java 程序时,应注意以下几点:
- 大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。
- 类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。
- 方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
- 源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记Java 是大小写敏感的),文件名的后缀为 .java。(如果文件名和类名不相同则会导致编译错误)。
- 主方法入口:所有的 Java 程序由 public static void main(String []args) 方法开始执行。
六、JAVA程序运行机制
-
编译
利用编译器(javac)将源程序编译成字节码à 字节码文件名:源文件名.class
-
运行
利用虚拟机(解释器,java)解释执行class字节码文件。