连接视频
程序:计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合
1990 sun公司 启动 绿色计划
1992 创建 oak(橡树 – 被注册) --> java
1994 James Gosling(詹姆斯·高斯林 – Java之父) 参加 硅谷大会 演示java功能,震惊世界
1995 sun 正式发布java第1个版本
2009年,甲骨文公司宣布收购Sun。2011,发布java7
其他java版本发现详情 https://www.oracle.com/java/technologies/java-se-support-roadmap.html
Java SE(Java Standard Edition)标准版
支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE
Java EE(Java Enterprise Edition)企业版
是为开发企业环境的应用程序提供的一套解决方案。该技术体系中包含的技术如:Servlet、Jsp等,主要针对于Web应用程序开发。版本以前称为J2EE
Java ME(Java Micro Edition)小型版
支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,次版本以前称为J2ME
Java语言是面向对象的(oop)
Java语言是健壮的。Java的强制类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。
Java语言是跨平台性的。【即:一个编译好的.class 文件可以在多个系统下运行,这种特性称为跨平台性】
Java语言是解释型的。
解释性语言:Javascript,PHP,java 编译性语言:c / c++
区别是: 解释性语言,编译后的代码,不能直接被机器执行,需要解释器来执行,编译性语言,编译后的代码,可以直接被机器执行,c / c++
editplus、notepad++
Subline Text
下载地址:https://www.sublimetext.com/download
IDEA
eclipse
双击sublime_text.exe:
汉化:从菜单栏单开tool,从下拉菜单找到command palete,输入package control,安装插件,再次输入package control 找到package control:installpackage,输入chinese,选择chineseLacalizations,也就是中文汉化包安装
比如:Test.java程序 --> 编译成Test.class(命令:javac Test.java) —> 【Win版本的JVM、linux版本的JVM、Mac版本的JVM – 运行】(命令:java Test)
说明:因为有了 JVM,同一个Java 程序在三个不同的操作系统中都可以执行。
这样就实现了Java 程序的跨平台性
基本介绍:
JDK 基本介绍:
1、JDK 的全称(Java Development Kit Java开发工具包)
JDK = JRE + java的开发工具【java,javac,javadoc,javap等】
2、JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。
所以安装了JDK,就不用在单独安装JRE了。
JRE基本介绍:
1、JRE(Java Runtime Environment Java运行环境)
JRE = JVM + Java的核心类库【类】
2、包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,
如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
JDK、JRE和JVM的包含关系:
window系统 如果在桌面找不到 “我的电脑” 图标,操作设置:
在桌面任意位置点击鼠标右键—》个性化(R)—》 主题 --》找到 “桌面图标设置” ,勾选 计算机 框框
官网网址:
https://www.oracle.com/java/technologies/javase-downloads.html
安装路径 和 jre 的存放位置 可以根据自己的需求进行设置,也可以直接使用默认的路径
进入 doc 命令行【快捷键方式 win + r】 输入 cmd
为什么要配置path:
在dos命令行中敲入 javac,出现错误提示。
原因分析:
错误原因:当前执行的程序在当前目录下如果不存在,wind10系统会在系统中已有的一个名为path的环境变量指定的目录中查找。如果仍未找到,会出现错误提示。所以进入到 jdk安装路径\bin目录下,执行javac,会看到javac参数提示信息。
配置环境变量path的步骤:
需求说明:
要求开发一个Hello.java 程序,可以输出 “hello,world!”
开发步骤
//这是java的快速入门,演示java的开发步骤
//对代码的相关说明
//1、public class Hello 表示Hello是一个类,是一个public(公有)的类
//2、Hello{ } 表示一个类的开始和结束
//3、public static void main(String[] args) 表示一个主方法,即我们程序的入口
//4、main(){ } 表示方法的开始和结束
//5、System.out.println("hello,world~"); 表示输出"hello,world~"到屏幕
//6、 ; 表示语句结束
public class Hello{
//编译一个main方法
public static void main(String[] args){
System.out.println("hello,world~");
}
}
注意:javac -encoding UTF-8 xxx.java 采用的是UTF-8 字符编码
因为本机是 GBK 字符编码:
什么是编译:
javac Hello.java
1、有了java源文件,通过编译器将其编程成JVM可以识别的字节码文件
2、在该源文件目录下,通过javac编译工具对Hello.java文件进行编译。
3、如果程序没有错误,没有任何提示,但在当前目录下会出现一个Hello.class文件,该文件称为字节码文件,也是可以执行的java的程序
什么是运行:
1、有了可执行的java程序(Hello.class字节码文件)
2、通过运行工具java.exe对字节码文件进行执行,本质就是.class装载到 jvm 虚拟机上执行
java程序开发注意事项
对修改后的Hello.java源文件需要重新编译,生成新的class文件后,再进行执行,才能生效。
Java源文件以 .java 为扩展名。源文件的基本组成部分是类(class),如类中的Hello类
Java应用程序的执行入口是main()方法。它有固定的书写格式:
public static void main(String[] args){ … }
Java语言严格区分大小写。
Java方法由已条条语句构成,每个语句以 “;” 结束。
大括号都是成对出现的,缺一不可。【习惯,先写 {} 再写代码】
一个源文件中最多只能有一个public类。其它类的个数不限。
public class Hello{
//编译一个main方法
public static void main(String[] args){
System.out.println("hello,world~");
}
}
// 一个源文件中最多只能有一个public类。其它类的个数不限。
// Dog 和 Tiger 是一个类
// 编译后,每一个类,都对应一个 .class
class Dog{}
class Tiger{}
如果源文件包含一个public类,则文件名必须按该类名命名!
一个源文件中最多只有一个public类。其它类的个数不限,也可以将main方法写在非public类中,然后指定运行非public 类,这样入口方法就是非public 的main方法
// 一个源文件中最多只能有一个public类。其它类的个数不限。
// Dog 和 Tiger 是一个类
// 编译后,每一个类,都对应一个 .class
class Dog{
//一个源文件中最多只有一个public类。其它类的个数不限,也可以将main方法写在非public类中,然后指定运行非public 类,
//这样入口方法就是非public 的main方法
public static void main(String[] args){
System.out.println("hello,小狗");
}
}
class Tiger{
public static void main(String[] args){
System.out.println("hello,小狗");
}
}
Java常用的转义字符:
1)\t :一个制表位,实现对齐的功能
2)\n :换行符
3) \\ :一个\ 注意:代码写 \\\\ -->控制台输出两个 \\
4)\" :一个"
5)\’ :一个’
6)\r :一个回车 System.out.println(“xxx\tzzp”)
public class ChangeChar{
public static void main(String[] args){
//1)\t :一个制表位,实现对齐的功能
System.out.println("北京\t天津\t上海\t深圳"); //
//2)\n :换行符
System.out.println("jack\nsmith\nmary");
//3) \\ :一个\
System.out.println("C:\\Window\\System32\\cmd.exe");
//4)\" :一个"
System.out.println("我说:\"好好学习,天天向上\"");
//5)\’ :一个’
System.out.println("我说:\'好好学习,天天向上\'");
//6)\r :一个回车 System.out.println(“xxx\tzzp”)
// 1、输出zzp
// 2、 \r表示回车
System.out.println("北京的天气\r深圳");//深圳的天气
}
}
课堂练习:
要求:请使用一句话输出语句,达到输出如下图形效果
代码:
public class ChangeCharExer01{
public static void main(String[] args){
System.out.println("书名\t作者\t价格\t销量\r\n三国\t罗贯中\t120\t1000");
}
}
找不到文件
解决方法:源文件名不存在或者写错,或者当前路径错误
主类名和文件名不一致
解决方法:声明为public的主类应与文件名一致,否则编译失败
缺少分号
解决方法:编译失败,注意错误出现的行数,再到源代码中指定位置改错
常见错误总结:
学历编程最容易犯的错误是语法错误。Java要求你必须按照语法规则编写代码。如果你的程序违反了语法规则,例如:忘记写分号、大括号、引号,或者拼错误了单词,java编译器都会报语法错误。尝试者去看懂编译器会报的错误信息。
介绍
用于注解说明解释程序的文字就是注释,注释提高了代码的阅读性(可读性);注释是一个程序员必须需要具有的良好编程习惯。将自己的思想通过注解先整理出来,再用代码去体现。
Java中注释类型:
单行注释
基本格式
格式: //注解文字
多行注释
基本格式
格式: /* 注解文字 */
使用细节
1)被注释的文字,不会被JVM (java虚拟机)解释执行
2)多行注释里面不允许有多行注释嵌套
//演示注释使用
public class Comment01{
//编写一个main方法
public static void main(String[] args){
// 单行注释
// 多行注释
/*
下面代码完成 两个数相加
定义变量
int n1 = 10; ...
*/
int n1 = 10;
int n2 = 30;
//求和
int sum = n1 + n2;
// 输出结果
System.out.println("结果=" + sum);
}
}
文档注释
注释内可以被JDK通过的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档,一般写在类上
基本格式:
//文档注释
/**
* @author zzp
* @version 1.0
* /
public class Comment02{
//编写一个main方法
public static void main(String[] args){
}
}
如何生成对应的文档注释:
javadoc -d 文件夹名 -xx -yy Comment02.java
打开 F:\data
用浏览器打开 index.html 文件
javadoc 工具软件识别以下标签:
标签 | 描述 | 示例 |
---|---|---|
@author | 标识一个类的作者 | @author description |
@deprecated | 指一个过期的类成员 | @deprecated description |
{@docRoot} | 指当前文档根目录的路径 | Directory Path |
@exception | 标志一个类抛出的异常 | @exception exception-name explanation |
{@inheritDoc} | 从直接分类继承的注解 | Inherits a comment from the immediate surperclass. |
{@link} | 插入一个到另一个主题的链接 | {@link name text} |
{@linkplain} | 插入一个到另一个主题的链接,但是该链接显示纯文本字体 | Inserts an in-line link to another topic. |
@param | 说明一个方法的参数 | @param parameter-name explanation |
@return | 说明返回值类型 | @return explanation |
@see | 指一个到另一个主题的链接 | @see anchor |
@serial | 说明一个序列化属性 | @serial description |
@serialData | 说明通过 writeObject() 和 writeExternal() 方法写的数据 | @serialData description |
@serialField | 说明一个 ObjectStreamField 组件 | @serialField name type description |
@since | 标记当引入一个特定的变化时 | @since release |
@throws | 和 @exception 标签一样 | the @throws tag has same meaning as the @exception tag. |
{@value} | 显示常量的值,该常量必须是static 属性 | Displays the value of a constant, which must be a static field. |
@version | 指定类的版本 | @version info |
1、类、方法的注释,要以javadoc的方式来写。
2、非Java Doc的注释,往往是给代码的维护者看的,着重告诉读者为什么这样写,如何修改,注意什么问题等
3、使用tab操作,实现缩进,默认整体向右移动,使用的时候用 shift + tab 整体向左移
4、运算符和 = 两边习惯各加一个空格。比如: 2 + 4 *5 + 365 - 89
5、源文件使用utf-8编码
6、行宽不要超过80字符
7、代码编写次行风格和行尾风格
行尾风格:
public void xxx(){ // 行尾风格
...
}
次行风格:
public void xxx()
{ // 次行风格
...
}
DOS介绍:
Dos:Disk Operating System 磁盘操作系统
常用的dos命令:
查看当前目录是有什么内容:dir
dir dir d:\abc\test200
dir / -b #查看当前目录下列表文件
切换到其他盘下:盘符号 cd: change directory
案例演示:切换到 c盘
cd /D c:
切换当前盘的其他目录下(使用相对路径和绝对路径)
案例演示:
cd \acb\test200
cd ..\..\abc\test200 #..\ 表示上一级目录
切换到上一级
案例演示:
cd ..
切换到根目录:cd
案例演示:
cd \
查看指定的目录下所有的子级目录 tree
tree e: # 根目录
tree e:\abc # 指定目录
清屏 cls
cls
退出DOS exit
exit
说明:因为后面使用DOS 非常少,所以下面的几个指令,
md #创建目录
md abc #在当前目录创建abc目录文件
md abc1 abc2 #创建多个
rd #删除目录
rd abc1 abc2 #删除多个目录
copy #拷贝文件
copy abc.txt f:\abc.txt #把当前的abc.txt文件拷贝到f盘下的abc.txt文件
del #删除文件
del hello.txt #删除hello.txt文件
echo #输入内容到文件
echo hello > hello.txt #创建内容为hello的hello.txt文件
type #输入空内容到文件
type nul > abc.txt #创建空的abc.txt文件
move #剪切
move abc.txt f:\abc.txt #把当前目录的abc.txt文件剪切到f盘下的abc.txt文件
1、编写hello,world程序【Homework01.java】
public class Homework01{
//编写一个main方法
public static void main(String[] args){
//编写hello,world程序
System.out.println("hello,world");
}
}
2、将个人的基本信息(姓名、性别、籍贯、住址)打印到控制台上输出。各条信息分别占一行。【Homework02.java】
//将个人的基本信息(姓名、性别、籍贯、住址)
//打印到控制台上输出。各条信息分别占一行。
public class Homework02{
//编写一个main方法
public static void main(String[] args){
// 转义字符
System.out.println("姓名\t性别\t籍贯\t住址\nzzp\t男\t地球\t中国");
}
}
3、JDK,JRE、JVM关系【Homework03.java】
1. JDK = JRE + java开发工具
2. JRE = JVM + 核心类库
4、环境变量path配置及其作用【Homework04.java】
1. 环境变量的作用是为了在dos的任意目录,可以去使用java 和 javac命令
2. 先配置 JAVA_HOME = 指向jdk安装的主目录
3. 编辑path环境变量,增加 %JAVA_HOME%\bin
5、Java编写步骤【Homework05.java】
1. 编写java的源代码
2. javac 编译,得到对应的 .class 字节码文件
3. java 运行,本质就是把 .class 加载到jvm 运行
6、Java编写7个规范【Homework06.java】
1. 类,方法的注释,使用javadoc的方式,即文档注释
2. 非javadoc注释,往往是对代码的说明(给程序的维护者),说明如何修改,注意事项
3. 使用tab,主题将代码右移,使用 shift+tab 整体左移
4. 运算符和 = 的两边,给空格,代码看上去清除 int n = 1 + 5;
5. 源文件使用 utf-8编码
6. 行宽字符不要超过 80字符
7. 代码编程风格有两种 次行风格 和 行尾风格(推荐)
7、初学者java容易犯的错误【Homework07.java】
1. 编译或者运行时,找不到文件 javac hell0.java,把文件名或者目录找对
2. 主类名和文件名不一致,修改时保持一致即可
3. 缺少; 分号
4. 拼写错误,比如: 1 -> l o->0, void -> viod ,要求写代码时,一定要小心