韩顺平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启动 绿⾊色计划
1992 创建oak语⾔言-->java
1994 gosling参加硅⾕谷⼤大会演示java功能,震惊世界
1995 sun正式发布java第⼀一个版本,⽬目前最新是jdk7.0
注:笔记中所有示例例都能正常通过编译
|
1
377
韩顺平Java从⼊入⻔门到精通视频(全94讲详细笔记)
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{
//⼀一个主函数,相当于是程序的⼊入⼝口
public static void main(String args[]){
//执⾏行行语句句
//System:是⼀一个包
//out.println是输⼊入函数
System.out.println("hello!");
}
}
2、编译hello.java 使⽤用javac hello.java
注:笔记中所有示例例都能正常通过编译
|
2
377
韩顺平Java从⼊入⻔门到精通视频(全94讲详细笔记)
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++中⼤大体⼀一致。
public class Test{
}
----------------------------------------------------------------
java基本语法---基本数据类型
java基本数据类型 四⼤大类型
整数类型、⼩小数(浮点)类型、布尔类型、字符类型
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的值输出
}
注:笔记中所有示例例都能正常通过编译
|
3
377
韩顺平Java从⼊入⻔门到精通视频(全94讲详细笔记)
整数类型
可以表示⼀一个整数,常⽤用的整数类型有: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
377
韩顺平Java从⼊入⻔门到精通视频(全94讲详细笔记)
java基本语法--定义变量量,初始化,赋值
定义变量量
1、什什么是定义变量量?
int a; 这就是定义了了⼀一个变量量,变量量名是a
float haha;这也定义了了⼀一个变量量,表示⼀一个float类型的⼩小数,变量量名是haha
初始化变量量
在定义变量量的时候,就给值
int a=45;这就是初始化变量量a
给变量量赋值
⽐比如你先定义了了变量量:int tt;
然后再给值tt=780; ->这就是给变量量赋值
----------------------------------------------------------------
java基本语法--基本数据类型转换
⾃自动转换
int a=1.2; double b=3;
结论:数据类型可以⾃自动的从低精度-->⾼高精度。⾼高精度不不能转为低精度。
byte⼩小于
韩顺平Java从⼊入⻔门到精通视频(全94讲详细笔记)
java 基本语法--运算符
java中常⽤用的算术运算符是:+加、-减、*乘、/除、%取模
其实%运算可以得到两个数的余数。
算术运算符:++⾃自加、--⾃自减。
这两个运算符⽐比较特殊,请⼤大家思考⼀一下:
int a=90;
a++; 等同于(a=a+1)
这时a等于? 91
int b=89;
b--; 等同于(b=b-1)
这时b等于? 88
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=a+90)
请问,a现在等于多少? 180
float b=89.7f;
b+=a; (相当于b=b+a)
请问,b现在等于多少? 269.7
int a=56;int b=90;
a-=34;b%=a; (相当于a=a-34,b=b%a)
System.out.println(b); 2
System.out.println(a); 22
----------------------------------------------------------------
运算符
关系运算符
1、==等于;2、>⼤大于;3、<⼩小于;4、>=⼤大于等于;5、<=⼩小于等于;6、!=不不等于
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");}
请编写⼀一个程序,该程序可以接收两个数(可以是整数,也可是⼩小数)并判断两个数是⼤大
于?⼩小于?还是等于?
注:笔记中所有示例例都能正常通过编译
|
6
377
韩顺平Java从⼊入⻔门到精通视频(全94讲详细笔记)
程序代码:
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(num18){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++;
注:笔记中所有示例例都能正常通过编译
|
7
377
韩顺平Java从⼊入⻔门到精通视频(全94讲详细笔记)
System.out.println("a="+a);
分⽀支控制
让程序有选择的执⾏行行,分⽀支控制有三种:
1. 单分⽀支;2、双分⽀支;3、多分⽀支a
1、单分⽀支语法:
if(条件表达式){
语句句;
}
2、双分⽀支语法:
if(条件表达式){
语句句;
}else{
语句句;
}
3.1、多分⽀支语法:
if(条件表达式){
语句句;
}else if(条件表达式){
语句句;
}else if(条件表达式){
语句句;
}else{
语句句;
}
//语句句1⾄至break中相当于{}可以加⼊入相应程序代码
break; //break,表示跳出switch语句句
switch(条件表达式){ //***条件表达式数据类型,就和case常量量表达式⼀一致,否则就会
3.2、多分⽀支语法:
报错。
*****:switch中的可⽤用数据类型主要是:允许byte,short,int,char,enum等
case 常量量1:
语句句1;
case 常量量2:
语句句1;
break;
...
case 常量量n:
语句句n;
break;
default:
语句句;
break;
}
注:笔记中所有示例例都能正常通过编译
|
8
377