02.Java入门
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是否安装成功
"开始"->;"运行",键入"cmd";
键入命令"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入门的更多相关文章
- # 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封装 ...
- 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封装 ...
- 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封装 ...
- 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封装 ...
- 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封装 ...
- 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封装 ...
- 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封装 ...
- 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现
088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...
- 087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点
087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点 本文知识点:封装的概念和特点 说明:因为时间紧张,本人写博客过程中只是对 ...
随机推荐
- PHP · MySQL函数
连接名=mysql_connect("主机","用户名","密码"); 连接名=mysql_qconnect("主机", ...
- VisualVM监控远程阿里云主机
一.前言 使用VisualVM监控远程主机,主要是要在远程主机上部署JMX服务和jstat服务,jstat服务的部署花了我半天的时间,而且,网上的资基本都是缺胳膊少腿的,没有一篇是一个整体(行得通的) ...
- KATANA Owin 资料收集
https://www.cnblogs.com/xishuai/p/asp-net-5-owin-katana.html http://wiki.jikexueyuan.com/project/thi ...
- L3(SP+OO+UT)能力评估
- Difference between 'SAME' and 'VALID' padding
Difference between 'SAME' and 'VALID' padding 'SAME' padding 和 'VALID' padding 的区别 If you like ascii ...
- vue + skyline 搭建 一个开发环境
1.之前用的是ext + skyline搭建环境 ,正好最近是做前端的事情,有时间用vue + skyline 搭建一个三维场景 2.准备vue 2.x ,UI 用的是iview 和element ...
- flutter 生命周期
前言:生命周期是一个组件加载到卸载的整个周期,熟悉生命周期可以让我们在合适的时机做该做的事情, flutter中的State生命周期和android以及React Native的生命周期类似. 先看一 ...
- DOMINO的JDBC和ODBC连接方法
利用ODBC实现Domino和关系数据库的互操作 Lotus Domino是当今办公自动化系统的主流开发平台之一,Domino自带一个非关系型数据库–文档型数据库,而目前大部分企业的信息都储存在 ...
- Jupyter notebook 使用多个Conda 环境
conda install nb_conda_kernels
- Linux Windows平台添加pip源
直接应用 pip3 install django -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com ...