Java

是SUN(Starfard University Network)公司在1995年开发的一门完全面向对象的,开源的高级编程语言。

Java的发展历史

1995年诞生,1996年发布第一个版本,现在已经出到了Java第九个版本。

1995年 Java诞生

1996年 jdk1.0发布

1998年 jdk1.2发布 J2SE(1.2,1.3,1.4)

2004年 jdk1.5发布 JavaSE

2014年 jdk1.8发布 有些功能不向下兼容

Java的优势

跨平台,一次编写,多次运行

Java是运行在JVM之上的。为不同的平台开发不同的JVM。所有的JVM对Java语言本身的规范是一样的。所以Java才有很好的跨平台行。

操作系统就是调用控制计算机硬件资源的,我们的软件是运行的操作系统之上的。那么我们的问题来了,我们的软件也要指挥激计算机的运作,是通过操作系统来指挥计算机运行的。JVM是用来执行Java代码的。

Java的版本

JavaSE:Java standard edition,Java标准版,是Java的基础。

JavaME:Java micro edition,移动端,小型设备,PDA等

JavaEE:Java enterprise edition,Java的企业级版本,JavaWeb等

JVM,JRE,JDK

JVM-Java virtual machine   Java虚拟机,运行Java程序

JRE-Java runtime environment Java运行时环境

JDK-Java development kit Java 开发工具包

下载JDK来安装 www.oracle.com

下载后JDK的安装根据提示进行,还有安装JDK的时候也会安装JRE,一并安装就可以了。

需要配置环境变量

在DOS中执行命令,操作系统会根据系统的环境变量Path去寻找对应的可执行程序(.exe,.bat)。

安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为C:\Program Files\Java\jdk1.8.0_151。

在"系统变量"中设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击"编辑",不存在则点击"新建"。

变量设置

  • 变量名:JAVA_HOME

  • 变量值:C:\Program Files\Java\jdk1.8.0_151(这里是你JDK的安装路径,可以更换)

  • 变量名:CLASSPATH

  • 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

  • 目的:配置classpath的目的是为了在任意路径下都可以执行.class文件。所谓的classpath指定的是.class文件所在的位置。

  • classpath不配置的时候,java命令会在当前目录下进行查找.class文件,如果找不到,会报以下错误

  • 如果设置了classpath,那么会从classpath指定的路径去寻找.class。如果classpath的值后面不加分号:查找的是classpath指定的路径下是否有.class文件。如果加了分号,先查询classpath指定的路径,再查找当前目录下是否有.class文件。

  • 注意:通常配置classpath会以.;开头,表示查询的是当前路径。

  • 变量名:Path

  • 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

  • 目的:配置path的目的是在任意路径下都可以执行java,javac命令。

测试JDK是否安装成功

  1. "开始"->;"运行",键入"cmd";

  2. 键入命令"java -version","java","javac"几个命令,出现画面,说明环境变量配置成功;

编写一个HelloWorld应用程序

所有的Java程序都是以.java结尾

class HelloWorld{
public static void main(string[] args){
System.out.println("Hello World!");
}
}

保存为HelloWorld.java文件。

编写好的应用程序,也就是以.java结尾的文件,称为源文件。编写好的源文件需要通过javac命令进行编译,编译的目的是为了让JVM可以认识并且执行。

编译后会生成一个.class文件,该文件称为字节码文件,能够被JVM认识并执行。

运行程序:使用Java命令进行运行。运行的是.class文件。

Java程序的编写流程

编写源文件---->通过javac命令编译源文件---->通过Java命令执行字节码文件。

javac编译时需要跟上后缀.java,而java命令后直接跟文件即可,不需要后缀。

HelloWorld详细注解

//class时java程序中的一个关键字,用于定义类,这个词在写代码时不能用来做其他的事情,只能用来定义类
//HelloWorld 时程序的类名。类名可以自定义。建议使用英语。注意首字母大写。
//所有的java程序都是写在类中。后面的大括号用于表示该类的范围。
class HelloWorld{
//表示一个main方法。是程序的入口。程序入口:表示所有的代码执行该从方法开始。
//args可以改变为其他名称,也可以是String args[]
public static void main(String[] args){
//表示程序的输出,双引号中的内容可以改变。
System.out.println("Hello World!");
}
}

02.Java入门的更多相关文章

  1. # 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封装 ...

  2. 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封装 ...

  3. 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封装 ...

  4. 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封装 ...

  5. 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封装 ...

  6. 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封装 ...

  7. 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封装 ...

  8. 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现

    088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...

  9. 087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点

    087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点 本文知识点:封装的概念和特点 说明:因为时间紧张,本人写博客过程中只是对 ...

随机推荐

  1. IntelliJ IDEA创建spring-boot项目

    开发环境: jdk版本:JDK8 maven版本:maven-3.5.2 开发工具:Itellij IDEA 2017.1 前提条件:已安装以上软件并配置好jdk和maven的环境变量 创建步骤: 点 ...

  2. 一文理解JS的节流、防抖及使用场景

    函数防抖(debounce):在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时. 看一个

  3. GIT 这么好用,为什么还是有人不知道怎么用它提交代码?

    客户端代码管理工具的变迁: 从 SVN 到 GIT 截止目前,新版的 APICloud Studio 2 仍然处于公测期.APICloud Studio 2 的代码管理客户端,由 SVN 改为了 GI ...

  4. js实现放大镜的效果

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  5. 使用servicestack连接redis

    引言:作为少有的.net架构下的大型网站,stackoverflow曾发表了一篇文章,介绍了其技术体系,原文链接http://highscalability.com/blog/2011/3/3/sta ...

  6. CentOS7系列--1.4CentOS7服务

    CentOS7服务管理 1. 查看服务 1.1. 查看所有运行的服务 [root@centos7 ~]# systemctl -t service UNIT LOAD ACTIVE SUB DESCR ...

  7. L3(SP+OO+UT)能力评估

  8. Android Studio最全插件整理

    在Android开发中,合理的使用Android Studio插件不但可以提高开发效率,还能从整体上提高代码的质量.下面就Android开发中常见的一些插件做一个整理. 1,GsonFormatGso ...

  9. C#Owin auth20开发 OwinStartup 不会触发的解决办法

    在使用owin auth20设置token时候遇到一个问题.项目中已经存在如下初始化配置类 using Microsoft.Owin; using Owin; [assembly: OwinStart ...

  10. [转]用python爬虫抓站的一些技巧总结 zz

    来源网站:http://www.pythonclub.org/python-network-application/observer-spider 学用python也有3个多月了,用得最多的还是各类爬 ...