java总复习.docx
- 文档编号:10953893
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:30
- 大小:94.58KB
java总复习.docx
《java总复习.docx》由会员分享,可在线阅读,更多相关《java总复习.docx(30页珍藏版)》请在冰点文库上搜索。
java总复习
java总复习
1.什么是程序?
1.程序是完成某些事务的一种既定方式和过程。
2.描述一系列动作的过程。
2.什么是计算机程序?
计算机程序是为了让计算机执行某些操作或解决某个问题还编写的一系列有序指令的集合。
3.什么是计算机语言?
编写程序的工具就是计算机语言
Java相关技术平台
JavaSEjava技术的核心,提供基础的Java开发工具。
JavaEE主要用于网络程序和企业级应用的开发。
JavaME内嵌式开发,主要应用于手机,家电等。
Java的应用
1.桌面应用程序
2.开发面向internet的程序
3.游戏
Java编程的顺序
1.编写源程序文件(.java)//指令:
javacXXX.java
2.编译源程序文件(.class)
3.运行class文件//指令:
javaXXX
Java程序的构成
1.
程序外部框架publicclassHelloWorld{
2.
程序主入口publicstaticvoidmain(String[]args){
3.
程序主体部分System.out.print(“HelloWorld!
”);
}
}
Java关键字
1.关键字要拼写正确
2.文件名要与class文件名完全一致
3.特殊字符要成对出现
public
class
static
void
程序注释的作用
1.标识代码含义
2.可以屏蔽一部分代码
3.
有利于编程逻辑思维的形成
/*开头
*/结尾
1.文件名称
1.多行文档注释标准2.日期
3.功能说明
2.单行注释的作用:
注释下一行代码的作用用“//”隔开
3.Javadoc注释,可生成帮助文档
/**开始
*/结尾
代码书写规范
1.代码要有适当的缩进
2.第一个大括号不可换行编辑,跟在类名或方法名后面
3.类名要用public修饰
4.一行只写一条语句
Eclipse开发Java
开发步骤
1.创建Java项目
2.创建包
3.创建源程序
4.编译源程序
5.运行Java程序加测试
项目名命名规范
1.不准出现中文名称
2.可以由英文与数字组成,允许有下划线
3.项目名全部用小写(英文)
包命名规范
1.不准出现中文名称
2.可以由文与数字、下划线组合
3.包名要起得有意义
文件名命名规范
1.不准出现中文名称(可以用汉语拼音)
2.名称首字母大写(如果有多个单词,第二个单词首字母依然大写)
3.类名首字母不能用数字但可包含数字
4.不可以有除$和下划线以外的任何符号
5.不准以$和下划线为首字符
Java编程中的注意点
1.Java对大小写非常敏感
2.每一条语句必须以;结尾
3.不要用中文标点符号
4.在打印语句中不要少写””
1.变量
声明变量及使用原理
1.确定数据类型
2.为变量命名,即变量名
3.给变量名初始值
变量就是在内存中一块存储数据的空间
变量的特点:
基本数据类型的数值具有覆盖性
长整型
整型
短整型
数值类型
单精度
浮点型
双精度
字符型
非数值类型字符串型
布尔型
常用变量类型
char字符型:
必须用单引号表示,如:
’男’、‘女’
int整型:
用于存储整数
double双精度:
精确到小数点后6位
String字符串型
声明变量的方法
1.声明变量,再赋值
2.声明变量赋值合二为一
要点:
变量使用前必须赋值
变量名命名规则
1.首字母要小写
2.以字母开头
3.可以包含$和下划线,但不得以其开头
4.其余部分不可以有中文,只能由数字,字母,下划线和$
5.后面英文的首字母要大小
6.不能是Java关键字,数值类型作为变量名
7.变量名不能重复
特殊数值
++:
自加1
--:
自减1
自动类型转换
如果目标数据类型大于原数类型,那么原数据类型自动提升为目标数据类型
强制类型转换
目标数据类型小于原数据类型,那么就要显式地强制类型转换
boolean类型的值
1.true:
真
2.false:
假
关系运算符作用
1.比较高低
2.比较大小
3.比较长短
关系运算符
>
大于
99>100,结果为false
<
小于
大象的寿命<乌龟的寿命,结果为true
>=
大于等于
你每次的考试成绩>=0,结果为true
<=
小于等于
你每次的考试成绩<=0,结果为false
==
等于
地球的大小==篮球的大小,结果为false
!
=
不等于
水的密度!
=铁的密度,结果为true
关系运算符的返回值就是boolean类型
if(true){
代码块
}
if语句中代码块,如果为true时,执行代码块,如果为false时,该语句直接结束
流程图
逻辑运算符
&&“逻辑并”两个条件同时为真,结果为真。
||“逻辑或”两个条件,一个条件为真,结果为真。
!
“逻辑非”条件为真,结果为假。
运算符的优先级
最高优先级:
小括号()
最低优先级:
赋值运算符=
其余的优先级:
!
>算术运算>关系运算>&&>||
if里面的语句是由左往右依次运算的,无法确定的优先级时用小括号括起来.
if–else句式
if(条件){
代码块1
}else{
代码块2
}
流程图:
多重if:
多重if用于解决连续区间值的判断
else只能有一个单独的,也可以省略
在编码前要想好代码的逻辑顺序安排,否则执行结果改变
句式:
If(条件1){
代码块1
}elseif(条件2){
代码块2
}else{
代码块3
}
流程图
嵌套if书写规范:
1.避免错误,每个if和else及包含的代码块用大括号括起来
2.代码要有缩进.
3.相匹配的一对if和else应该左对齐
嵌套if句式
if(条件1){
if(条件2){
代码1
}else{
代码2
}
}else{
代码块3
}
流程图
switch:
switch语句规范:
1.switch语句,顺序可以打乱
2.如果语句执行完,没有break,程序会出现继续往下贯穿执行到该程序结束
3.switch()里的表达式,表达式只能是整型和字符类型(int/char)
4.case语句中,常量不能相同
switch与多重if的相同点
1.都是用来处理多分支条件的结构
2.switch的顺序可以改变,执行结果一样,if则不能
switch句式
系统异常
如果程序异常,整个程序将终止运行
为什么要处理程序异常?
1.使程序健壮
2.与用户友好交互
hasNextInt:
可以用来判断输入是否合法字符.
while循环
特点:
先判断,后执行,如果条件不满足,退出循环
表达式中只能有boolean值
使用循环是要检查循环是否能够正确安全退出
使用循环要遵循先找循环条件后找循环操作的原则
while循环的语法及流程图
while(循环条件表达式){
循环操作部分
}
do-while循环
特点:
先执行,后判断,无论任何情况都至少循环一次
do-while循环的语法及流程图
do{
循环操作
}while(循环条件);
程序调试的目的:
找出缺陷原因,修正缺陷
程序调试的主要方法;
设置断点,启动调试(F11),跳入(F5),单步执行(F6)程序中止(F8)
调试步骤:
1.分析问题
2.问题点定位
3.设置断点(定位点处双击鼠标)
4.启动调试(F11)
5.逐行调试,并且观察变量的数值
6.找到问题,修改问题
7.再次测试代码运行结果
for循环
在循环固定的情况,首选for循环
for循环的步骤
1.初始部分
2.条件判断
3.循环操作
4.更新循环变量
注意:
变量有自己的作用域
for循环的语法:
for(表达式1;表达式2;表达式3){
循环操作部分
}
表达式1为初始部分
表达式2为循环条件
表达式3为迭代部分
注意点:
在程序运行结束时,迭代部分是自动累加的结果
如;
for(inti=1;i<=5;i++){
}
5次循环后,i的值为6
for循环语法中,表达式都可以省略,但不可以省略分号
如:
for(;;){
}
此情形下语法正确,但是缺少表达式2,表达式3会出现死循环
跳转语句:
1.break
在循环中遇到break,会结束当前循环,break改变程序控制流.
break后面跟代码无意义
特点:
break通常在循环中与条件语句一起使用
2.continue
continue表示结束本次循环,进入下次循环
特点:
大部分用在判断语句中,配合if结构
continue只能在循环中使用
三种循环的区别:
1.语法不同
2.执行顺序不同
while循环:
先进行条件判断.再执行循环体.
do-while循环:
先执行循环体,再判断条件
for循环:
先执行初始化部分,再进行条件判断.然后执行循环操作,再执行迭代部分
3.适用情况不同
循环次数确定时首选for循环,循环次数不确定时,使用while循环和do-while循环
为什么需要数组?
当需要对数据类型相同的一组数据集中进行处理时,用数组比使用多个变量便捷得多.
数组的特点:
数组是在内存中开辟一块连续的空间来存放相同的数据类型的变量,数组长度一经定义,不允许改变.数组的下标从0开始排列.
使用数组的步骤:
1.声明数组
2.分配空间
3.赋值
4.数据处理
数组语法1:
数组类型[]数组名=new数组类型[数组长度];
如:
int[]scores=newint[30];
数组语法2;
数据类型[]数组名={值1,值2,值3,……,值n};
如:
int[]scores={60,70,98,90,76};
还有一种写法:
如:
int[]scores=newint[]{60,70,98,90,76};
数组越界报错:
当编译器出现:
java.lang.ArraysIndexOutOfBoundsException时,为数组越界报错.
插入算法8步骤
1.定义并赋值
2.定义数组,数组长度为老数组长度加1
3.给老数组排序
4.定义一个要插入的的数据
5,默认一个插入下标给第4步骤
6.在老数组找要插入的位置
7.第一数组第4步骤数据插入新数组,下标减一
8.新数组赋值
什么是二重循环?
二重循环就是一个循环体中包含另一个完整的循环结构,各种循环都可以相互正确嵌套
二重循环中的跳转语句:
break:
表示结束本层循环,进入下一层循环
continue:
结束本次循环,进入下一次循环
break示意图
for(………)
{
for(……….)
{
……
break;
……
}
…..
}
continue示意图
for(………)
{
for(…….)
{
…….
continue;
…….
}
…….
}
如何创建类?
语法:
访问修饰符关键字类名{
类成员(属性/方法)
}
如:
publicclassXxx{
(类名)
//定义属性部分
属性1的类型属性1;
属性2的类型属性2;
……
属性n的类型属性n;
//定义方法部分
方法1;
方法2;
……
方法n;
}
对象的的静态特征叫属性,动态特征叫方法.
属性有特定的值
什么是对象?
对象是用来描述客观事物的一个实体,由一组属性和方法构成,对象是类的实体.
什么是封装?
封装就是把一个事物包装起来,并尽可能隐藏起来
封装分为方法封装和属性封装
在java中,已经封装好的方法不需要知道方法的实现过程,直接可以使用.
封装的优点:
1.方便该方法的复用
2.方便维护
对象的属性的方法通常被封装在一起,共同体现事物的特征,两者相辅相成
什么是类?
类是具有相同属性和方法的一组对象的抽象
类是模子,确定对象将会拥有的特征(属性)和行为(方法).
定义类的步骤
1.访问修饰符关键字定义类名
2.类的静态属性
3.编写类的方法
如何创建对象
类名对象名=new类名\();
如:
Studentstu=newStudent();
属性的调用可以通过对象“.”操作符调用
类的使用
创建对象
属性赋值
调用方法
面向对象的优点
1.与人类的思维一致
2.隐藏信息,提高了维护性和安全性
main()方法模拟用户使用过程
public公共访问修饰符
private私有访问修饰符
3.提高了程序可重用性
基本数据类型和引用数据类型的区别
基本数据类型不具有方法
引用数据类型具有方法
基本数据类型变量中,不同的变量会分配不同的储存空间改变一个变量值,不会改变另一个变量值.
一个引用数据类型赋值给另一个引用数据,它是将自身的内存地址传递给另一个引用数据
方法的语法
访问修饰符返回值类型方法名(参数列表,没有参数.括号为空){
方法体(该方法的功能代码)
}
方法的语法
访问修饰符返回值类型方法名(参数列表,没有参数.括号为空){
方法体(该方法的功能代码)
}
如:
publicStringshow(){
returnname;
}
方法的返回值类型与定义返回值类型要匹配
方法的要素:
1.访问修饰符
2.返回值类型
3.方法名
4.参数列表
5.方法体
参数列表中的形式参数要与实际参数类型一致,如果不一致,会有编译报错
类的方法定义某种行为(或功能)
定义方法的步骤:
先写访问修饰符和返回值类型有返回值要用return接收,无返回值,返回值类型为void
再写方法名和参数列表及方法体
注意点:
方法在同类中可以直接使用.在外部类中使用要先创建对象然后用对象.操作符调用,属性也是一样
方法的返回值只能有一个
多个方法不能嵌套
不能在方法体外写逻辑代码
如果有返回值时,必须有相同类型值的变量接收,不得直接打印
常见的错误1:
publicclassStudent{
publicvoidshowInfo(){
return“我是一名学生”;
}
}
方法的返回类型为void,方法吉不能有return返回值
常见错误2:
publicclassStudent{
publicdoublegetInfo(){
doubleweight=95.5;
doubleheight=1.69;
}
}
方法不能返回多个值
常见错误3:
publicclassStudent{
publicStringshowInfo(){
return“我是一名学生”;
publicdoublegetInfo(){
doubleweight=95.5;
doubleheight=1.69;
returnweight,height;
}
}
}
多个方法不能嵌套
常见错误4:
publicclassStudent{
intage=20;
if(age<20){
System.out.println(“年龄不符合入学要求!
”);
}
publicvoidshowInfo(){
return“我是一名学生”;
}
}
不能在方法外写逻辑代码
在方法中定义的变量叫局部变量,局部变量在使用前要先赋值,在方法外定义的变量叫全局变量,全局变量可以直接使用,不赋值
局部变量和全局变量的区别
1.作用域不同
局部变量仅限于它的方法
全局变量的作用域在整个类内部都是可见的
2.初始值不同
全局变量有默认值,局部变量要初始化
3.在同一个方法中,不允许有同名的局部变量,不同的方法中可以同名
全局变量不可以与同作用域吕的变量同名,但是可以方法中的变量同名
4.局部变量的优先级高于全局变量
JavaDoc注释语法:
JavaDoc注释以/**开头.以*/结尾.
每个注释包含一些描述性的文本及若干个Javadoc标签
Javadoc标签一般以@为前缀
如何生成JavaDoc文档
使用Eclipse生成JavaDoc文档的操作方法很简单,在”文件”菜单下选择”导出”,弹出”导出”对话框,选择”Java”下的JavaDoc提交.
语法:
访问修饰符返回值类型方法名(参数列表){
方法体
}
如:
publicvoidshow(Stringname){
}
定义带参方法的要点;
参数列表中(数据类型参数名)
调用带参方法:
1.传递的参数数据类型要与定义的该方法的参数类型要一致
2.个数相同
3.顺序一致
4.不能再次显式地定义数据类型
方法:
定义后的方法是要被使用的,当被调用时,该方法必须要被实现(执行)
实参不需要指定数据类型(调用时)
形参和实参必须要匹配
形参和实参数据数量要一致
返回值必须要处理
常见错误1:
publicvoidaddName(Stringname){
}
//方法调用
对象名.addName(String“张三”)
不能显式地定义数据类型
常见错误2:
publicbooleansearchName(intstart,intend,intname){
}
//方法调用
Strings=”开始”;
inte=3;
Stringname=”张三”;
booleanflag=对象名.searchName(s,e,name);
数据类型不一致
常见错误3;
publicbooleansearchName(intstart,intend,Stringname){
}
//方法调用
ints=1;
inte=3;
Stringname=”张三”;
对象名.searchName(s,e,name);
要对返回值进行处理
常见错误4:
publicbooleansearchName(intstart,intend,intname){
}
//方法调用
ints=1;
inte=3;
booleanflag=对象名.searchName(s,e);
形参和实参的数量不一致
包的作用:
易于找到和使用相应的文件
防止命名冲突
更好地保护类,属性和方法
包名一定要小写,不能以数字开头,包名前后不能出现点,命名的包名要以分号结束
如何声明包
package包名;
如何导入包
import包名.类名;
Java把数据类型分为两大类
基本数据类型
引用数据类型
不论方法是基本数据类型还是引用数据类型返回值都与定义方法的数据类型一致
对于方法返回值的数据类型,使用引用数据类型和使用基本数据类型是一样的,只要记住方法体内return的返回类型与方法定义的返回值类型一致
对象属于引用数据类型,引用数据类型所传递的值为该对象的地址,当把一个对象作为参数传递给方法时,其实是把对象的地址传递给了该方法的参数
使用对象数组作为参数,只是将对象作为一个数组元素,其引用方法与基本数据类型的数组完全相同,但针对对象数组中单个元素来讲,它又具有对象的属性和方法
全局变量,局部变量,方法,对象都存放于栈中
内存有5块区域:
栈,堆,数据区,方法区,常量池
一个方法参调用使用完毕后,方法消亡,局部变量同时消亡
如何获取字符串长度
语法:
字符串1.length();
字符串的比较
语法:
字符串1.equals(字符串2);
“==”和”equals”的区别
equals:
代表判断字符串的值是否相同,该方法返回值为布尔类型
==:
比较字符串的地址是否相同
如何忽略大小写
字符串1.equalsIgnoreCase(字符串2);
如何把字符串转换成大写或小写
语法;
大写:
字符串.toUpperCase();
小写:
字符串.toLowerCase();
字符串的连接
字符串1.concat(字符串2);
字符串的提取与查询
序号
方法
说明
1
publicintindexOf(intch)
publicintindexOf(Stringvalue)
搜索第一个出现的字符ch(或字符串value)
2
publicintlastIndexOf(intch)
publicintlastIndexOf(Stringvalue)
搜索最后一个出现的字符ch(或字符串value)
3
4
publicStringsubstring(intindex)
publicStringsubstring(intbeginindex,intendindex)
提取从位置索引开始的字符串部分
提取beginindex和endindex之间的字符串部分
5
publicStringtrim()
返回一个前后不含任何空格的调用字符串的副本
字符串的拆分
语法;
字符串.split(Stringseparator,intlimit);
separator可选项,标识拆分字符时使用一人或多个字符.如果不选择该项,则返回包含该字符所有单个字符所有单个字符的元素数组
limit:
可选项,该值用来限制返回数组中的元素个数
StringBuffer类
常用的StringBuffer类方法
语法:
字符串1.toSting();
将StringBuffer类型的字符串1转换为String类型的对象并返回
语法:
字符串1.append(参数);
可以将任何类型的值追加到字符串之后
语法:
字符串1.insert(位置,参数);
将参数插入到字符串1的指定位置(int类型)后并返回,参数可以是包括String的任何类型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 复习