一、java简介
1.1 前言
Java语言是美国Sun公司(stanford University Network),在1995年推出的高级编程语言。所谓编程语言是计算机的语言,人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。
1996年1月,Sun公司发布了Java的第一个开发工具包(JDK 1.0),这是Java发展历程中的重要里程碑,标志着Java成为一种独立的开发工具。
詹姆斯·高斯林 (James Gosling)是一名软件专家,1955年5月19日出生于加拿大,Java编程语言的共同创始人之一,一般公认他为“Java之父”。
1.2 java历史版本
1.3 java特点
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、跨平台与可移植性、多线程、动态性等特点。
单核心 单线程 多核心 多线程。(微秒级)
windows,mac,linux,unix .apk .ipa
面向对象三大特征 :封装,继承,多态
java面向对象: 封装,继承,多态,抽象,接口
1.4 java开发方向
JavaSE: Java Standard Edition PC方向 桌面应用
JavaEE:Java Enterprise Edition 可扩展的企业级应用Java平台 服务器项目 网页 。例如:爱奇艺 打开网页
JavaME:Java Micro Edition用于嵌入式Java平台;移动设备应用
安卓(java):google sun oracle 收购;诺基亚:人需要什么我们就造什么; 乔布斯曰过:人的需求是我们创造的。
1.5 java语言能做什么?
java语言可以编写桌面应用程序(类似于电脑QQ,但是java不擅长)、Web应用程序(服务器程序)、分布式系统和嵌入式系统应用程序等。人工智能。python(黄金语言) 。
主要应用在web程序的开发领域,常见的互联网应用比如天猫,京东,物流系统,网银系统等,以及服务器后台处理大数据的存储,查询,数据挖掘等也有很多应用。
二、Java开发环境组成(jdk)
2.1 jvm虚拟机
JVM (Java Virtual Machine),是(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
跨平台(不同的操作系统) 任何软件的运行都需要运行在操作系统上,而我们使用Java编写的软件可以运行在任何的操作系统上,这个特性成为java语言的跨平台性。这个特性是由JVM实现的,我们编写的程序运行在JVM上,而JVM运行在操作系统上。
Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
Windows OS, MacOS, Linux OS 。不同的操作系统,内部的运行原理是不一样,换句话说,windows的软件不能在mac电脑上面进行安装。所以我们很多软件的制作成本就加大了。例如 爱奇艺,需要制作windows版 还需要制作mac版。此时就需要两个开发团队。假如你是老板,急需一种操作:能不能开发一个版本在不同的平台中都能运行,这就是跨平台。
Java是支持跨平台操作的一门语言。
java程序的执行过程:源代码(.java)->编译->字节码(.class)->jvm解释->机器码->系统执行
jvm的作用:加载由源文件编译生成的字节码文件,将其转为机器码,发给系统执行
jvm实现跨平台:java针对不同的系统平台都开发了对应的jvm虚拟机。从而实现同一个字节码文件可以在任意系统上运行,从而实现了跨平台性。所以,jvm就像不同语言的翻译官,同样是一句“你好”,在对英国人说时,英文jvm将它翻译为英语 。对韩国人说时,韩语jvm将它翻译为韩语。
2.2 JRE
Java运行环境(Java Runtime Environment,简称JRE)是一个软件,由SUN微系统所研发,JRE可以让计算机系统运行Java应用程序(Java Application)。JRE的内部有一个Java虚拟机(Java Virtual Machine,JVM)以及一些标准的类别函数库(Class Library)。
2.3 JDK
JDK(java development kit)是 Java 语言的软件开发工具包,主要用于各种环境下的java程序开发,包括移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。(电工的工具包钳子,螺丝刀,欧姆表。。。 )jdk中自带有jre。
2.4 jdk的安装
oracle官网下载jdk安装包。
规定:
1. 以后任何安装路径都不要有中文路径
2. 以后我们的软件统一装到某个盘的某个文件夹中 E:\app
3. 我们安装完成之后 又弹出一个框 这是提示我们安装jre,Jdk安装完成之后 已经有jre了 所以 这个地方取消安装
4. 安装完成jdk之后 在jdk文件夹中
Bin(binary 二进制文件) 这里面是java的执行文件
Include 这里面导入c和c++的一些代码
Jre java的运行环境
Lib 资源库
5. 配置jdk的环境变量(可以理解成告诉你的电脑 我们安装了jdk 我们要开发java 并且 jdk安装到哪了)
2.5 环境变量的配置
【我的电脑】-右键-【属性】-【高级系统设置】-【环境变量】
【系统变量】-【新建】JAVA_HOME :jdk安装根目录
【编辑】Path:添加 %JAVA_HOME%\bin
配置完毕后,依次点击确定就可以了。
如果不配置环境变量,那么java的的可执行文件只能在安装位置的bin目录下才可以执行。
配置环境变量就是为了,可以在任意路径下运行java可执行文件。
JAVA_HOME
指向jdk的安装目录,Eclipse/idea/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。
CLASS_PATH (可以不用配置 jdk1.5就不用配置了,会自动找。)
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。
需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。
新版的软件,classpath没有什么用了,因为在安装的时候已经选了JDK而且可以添加
Path
%JAVA_HOME%\bin
作用是指定命令搜索路径,在i命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。
需要把jdk安装目录下的bin目录增加到现有的PATH 变量中,bin目录中包含经可执行文件javac/java/javadoc等待,
设置PATH变量后,就可以在任何目录下执行javac/java等工具了。
bin目录 是公认的可执行文件 放置的目录。
三、HelloWorld入门程序
3.1 程序开发步骤说明
开发环境搭建完成后,可以开始开发我们的第一个java程序了。
Java程序开发三步走:编写,编译,运行
编程语言分类:
解释性语言:比如 javascript, python, perl, shell
编译型语言:比如 java,c,c++,c#
XXX.java--编译-->XXX.class
javac.exe :编译器 javac 编译命令 java.exe :解释器 java 运行命令
3.2 编写Java源程序
1.新建一个文本文档文件,其中编写以下代码
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World java!!!");
}
}
注意:类名要跟文件名完全一致。要遵循大驼峰命名规定。
定义类的格式: public class 类名{}
2.编译和运行
window+R 打开命令行模式,输入cmd 将目录切换到 java文件所保存的目录
输入:javac 文件名称 生成.class类型的字节码文件
输入:java 字节码文件 运行程序
四、使用idea工具编写代码
包的命名规范:
特点:全小写,点分隔,反域名。
www.taobao.com
com开头:公司项目 com.aaa.chaoshi.util
org开头:公益项目
java开头:java中的类包
4.1 java注释
文档注释用于在生成文档时对写的类,方法或字段进行解释;多行注释,用于写多行的说明信息,常用于注释一段代码;单行注释,描述的信息比较少的时候,使用单行注释。
4.2 关键字
是指在java中有特殊含义的,被保留的,不能随意使用的字符
特点:会识别 、全小写、有颜色。
4.3 标识符
概念:在程序中我们自己定义的内容。比如类的名字、方法的名字和变量的名字等,都是标识符。
标识符的命名规则:(硬性要求)
- 构成:字母、数字、下划线 、$符号
- 首个只能是:字母 、下划线 、$符号,不能以数字开头
- 不能使用关键字
标识符的命名规范:(软性要求)
- 类名规范:首字母大写,后边每个单词的首字母大写(大驼峰)
- 变量名规范:首字母小写,后边每个单词的首字母大写(小驼峰)
- 方法名规范:同变量名
- 见名知意