韩顺平 Java 从入门到精通视频(全 94 讲详细笔记)
完整清晰版
java 平台
1、J2SE java 开发平台标准版
2、J2EE java 开发平台企业版
java 程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行 java 程序。
不同系统上要安装对应的虚拟机才可以运行 java 程序
开发步骤
1、编写源文件 (.java)
2、编译源文件为类文件(.class)可用 J2SE 或 J2EE 编译
3、在虚拟机上运行
注释
//单行注释
/* */多行注释
java 内容介绍
java 编程可以分成三个方向:
1、java se (j2se)桌面开发 java 中的基础中的基础
2、java ee (j2ee)web 开发
3、java me (j2me)手机开发
java se 课程介绍
java 面向对象编程(基础)
java 图开界面开发
java 数据库编程
java 文件 io 流编程
java 网络编程
java 多线程编程
java ee 基础 1
java 面向对象编程--数据库编程-->java se
java 基础 2
html--css--javascript-->div+css
java ee 中级部分
Servlet--Jsp-->mvc 模式
java ee 高级部分
Struts--Ejb--Hibernate--Spring--Ajax(ext,dw2)-->ssh 框架
java 之父 gosling
1990 sun 启动 绿色计划
注:笔记中所有示例都能正常通过编译
1 | 449
韩顺平 Java 从入门到精通视频(全 94 讲详细笔记)
完整清晰版
1992 创建 oak 语言-->java
1994 gosling 参加硅谷大会演示 java 功能,震惊世界
1995 sun 正式发布 java 第一个版本,目前最新是 jdk7.0
java 开发工具
记事本、(jcreator、jbuilder 退出舞台了)、netbean、eclipse
如何选择开发工具
先选择记事本,对 java 有一定了解后再使用 eclipse 高级开发工具
为什么呢?
1、更深刻的理解 java 技术,培养代码感
2、有利于公司面试
java 语言的特点
1、java 语言是简单的
2、java 语言是面向对象的
3、java 语言是跨平台(操作系统)的[即一次编译,到处运行]
4、java 是高性能的
java 第一个程序 hello.java
运行 java 程序要安装和配置 jdk
jdk 是什么?
1、jdk 全称 java dvevlopment kit 中文 java 开发工具包
2、jdk 是 sun 公司开发的
3、jdk 包括 jre(java runtime envirnment)java 运行环境、一堆 java 工具和 java 基础的
类库(类共 3600 左右,常用类在 150 个左右)
4、可以在 www.sun.com 下载
**开发安装 jdk,用户执行需要安装 jre
配置 JDK
添加环境变量即可
windows 下配置 jdk
在计算机属性--高级设置--环境变量--添加 PATH 将 JDK 所在路径指定即可。多个环境变量
设置时需要用;号进行隔开
1、编写第一个 hello.java
//注释 (解释) 作者:
//功能:在控制台显示"hello"
//日期:2013.11.28
//public:表示这个类是公共的,一个 java 文件中只能有一个 public 类
//class:表示这是一个类
//hello:类名(公共类的类名必须和文件名一致)
public class hello{
注:笔记中所有示例都能正常通过编译
2 | 449
韩顺平 Java 从入门到精通视频(全 94 讲详细笔记)
完整清晰版
//一个主函数,相当于是程序的入口
public static void main(String args[]){
//执行语句
//System:是一个包
//out.println 是输入函数
System.out.println("hello!");
}
}
2、编译 hello.java 使用 javac hello.java
3、执行 hello.java 使用 java hello
java 程序运行关系
1、java 源文件(.java 文件)
2、java 编译器即 javac.exe
3、java 字节码文件(.class 文件)
4、由解释执行器即(java.exe)将字节码文件加载到 java 虚拟器(jvm)
5、字节码文件(.class)就会在 java 虚拟机中执行
对 hello.java 程序进行改过使之变为一个简单的加法运算程序
//注释 (解释) 作者:
//功能:在控制台显示"hello"
//日期:2013.11.28
//public:表示这个类是公共的,一个 java 文件中只能有一个 public 类
//class:表示这是一个类
//jiafa:类名(公共类的类名必须和文件名一致)
public class jiafa{
//一个主函数,相当于是程序的入口
public static void main(String args[]){
//执行语句
//System:是一个包
//out.println 是输入函数
// System.out.println("hello!");
int a=10;//定义一个变量,变量名 a,它的值 10
int b=20;//定义一个变量,变量名 b,它的值 20
int result=a+b;//定义一个叫 result 变量将变量 ab 相加的值赋值给 result
//输出结果
System.out.println("结果是"+result);
}
}
----------------------------------------------------------------
为什么有变量
不论是使用哪种高级程序语言编写程序,变量都是其程序的基本组成单位。java 中的基本
数据类型的定义与 c/c++中大体一致。
注:笔记中所有示例都能正常通过编译
3 | 449
韩顺平 Java 从入门到精通视频(全 94 讲详细笔记)
完整清晰版
public class Test{
public static void main(String []args){
int a=1;//定义一个整形变量,取名 a,并赋初值 1
int b=3;//定义一个整形变量,取名 b,并赋初值 3
b=89;//给变量 b 赋 89
System.out.println(a);//输出语句,把变量 a 的值输出
System.out.println(b);//把变量 b 的值输出
}
}
----------------------------------------------------------------
java 基本语法---基本数据类型
java 基本数据类型 四大类型
整数类型、小数(浮点)类型、布尔类型、字符类型
整数类型
可以表示一个整数,常用的整数类型有:byte,short,int,long
主要区别是 数据大小范围,请大家看一个小案例。
byte 占用内存 一个字节 范围:-128 至 127
short 占用内存 两个字节 范围:-32768 至 32767
int 占用内存 四个字节 范围:-2147483648 至 2147483647
long 占用内存 八个字节 范围:-?至?
小数(浮点)类型
可以表示一个小数,常用的小数(浮点)类型有:
float(单精度),double(双精度)
float 占用内存 四个字节 范围:3.4E-38 至 3.4E+38 只能提供 7 位有效数字
double 占用内存 八个字节 范围:1.7E-308 至 1.7E+308 可提供 16 位有效数字
布尔类型
可以表示"真"或者"假",类型是 boolean
比如:
boolean spBool=true; //给变量 spBool 定义为 boolean 型并赋值为真
字符类型
可以表示 单个字符,字符类型是 char。char 是两个字节(可以存放汉字)
多个字符我们称为字符串,在 java 中 String 这种数据类型表示,但是 String 不是基本数
据类型,而是类,类是复合数据类型。
结论:在 java 中,对 char 进行运算的时候,直接当做 ascii 码对应的整数对待。
思考:int test1='a'+'b'; 输出值 195
char test2='a'+'b'; 输出值?
char test3='中';
输出值 195
注:笔记中所有示例都能正常通过编译
4 | 449
韩顺平 Java 从入门到精通视频(全 94 讲详细笔记)
完整清晰版
java 基本语法--定义变量,初始化,赋值
定义变量
1、什么是定义变量?
int a; 这就是定义了一个变量,变量名是 a
float haha;这也定义了一个变量,表示一个 float 类型的小数,变量名是 haha
初始化变量
在定义变量的时候,就给值
int a=45;这就是初始化变量 a
给变量赋值
比如你先定义了变量:int tt;
然后再给值 tt=780;
->这就是给变量赋值
----------------------------------------------------------------
java 基本语法--基本数据类型转换
double b=3;
自动转换
int a=1.2;
结论:数据类型可以自动的从低精度-->高精度。高精度不能转为低精度。
byte 小于
韩顺平 Java 从入门到精通视频(全 94 讲详细笔记)
完整清晰版
java 基本语法--运算符
java 中常用的算术运算符是:+加、-减、*乘、/除、%取模
其实%运算可以得到两个数的余数。
算术运算符:++自加、--自减。
这两个运算符比较特殊,请大家思考一下:
int a=90;
a++;
这时 a 等于? 91
等同于(a=a+1)
int b=89;
b--;
这时 b 等于? 88
等同于(b=b-1)
int a=56;
int b=a++;
System.out.println(b); 56
System.out.println(a); 57
***int b=++a;相当于 a=a+1 再将 b=a;
int b=a++;相当于 b=a 再将 a=a+1。
----------------------------------------------------------------
算术运算符:+=左加、-=左减、/=左除、%=左取模
请大家看看几个案例,就明白了:
int a=90;
a+=90;
请问,a 现在等于多少? 180
(相当于 a=a+90)
float b=89.7f;
b+=a;
请问,b 现在等于多少? 269.7
(相当于 b=b+a)
int a=56;int b=90;
a-=34;b%=a;
System.out.println(b); 2
System.out.println(a); 22
----------------------------------------------------------------
(相当于 a=a-34,b=b%a)
运算符
关系运算符
1、==等于;2、>大于;3、<小于;4、>=大于等于;5、<=小于等于;6、!=不等于
注:笔记中所有示例都能正常通过编译
6 | 449
韩顺平 Java 从入门到精通视频(全 94 讲详细笔记)
完整清晰版
int a=90;int b=90;
if(a==b){System.out.println("ok1");}
b--;
if(a>b){System.out.println("ok2");}
if(a>=b){System.out.println("ok3");}
请编写一个程序,该程序可以接收两个数(可以是整数,也可是小数)并判断两个数是大于?
小于?还是等于?
程序代码:
import java.io.*;//载入 IO 流包
public class Demo5{
public static void main(String []args){
try{
//输入流,从键盘接收数
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
//给出提示
System.out.println("请输入第一个数");
//从控制台读取一行数据
String a1=br.readLine();
System.out.println("请输入第二个数");
String a2=br.readLine();
//把 String 转为 float
float num1=Float.parseFloat(a1);
float num2=Float.parseFloat(a2);
if(num1>num2){System.out.println("第一个大");}
if(num1==num2){System.out.println("相等");}
if(num1
韩顺平 Java 从入门到精通视频(全 94 讲详细笔记)
完整清晰版
if(a==b || a>8){System.out.println("ok1");}
b--;
if(a>b && a>45){System.out.println("ok2");}
if(!(a<=b)){System.out.println("ok3");}
java 基本语法----三大流程控制
顺序控制
听其名而知其意,让程序可以顺序的执行。
请大家看个案例[demo11.java]:
int a=7;
System.out.println("a="+a);
System.out.println("hello!");
a++;
System.out.println("a="+a);
System.out.println("0(∩_∩)0");
a++;
System.out.println("a="+a);
分支控制
让程序有选择的执行,分支控制有三种:
1、 单分支;2、双分支;3、多分支 a
1、单分支语法:
if(条件表达式){
语句;
}
2、双分支语法:
if(条件表达式){
语句;
}else{
语句;
}
3.1、多分支语法:
if(条件表达式){
语句;
}else if(条件表达式){
语句;
}else if(条件表达式){
语句;
}else{
语句;
}
注:笔记中所有示例都能正常通过编译
8 | 449