Java课程总结.docx
《Java课程总结.docx》由会员分享,可在线阅读,更多相关《Java课程总结.docx(17页珍藏版)》请在冰豆网上搜索。
![Java课程总结.docx](https://file1.bdocx.com/fileroot1/2022-11/20/b516f326-afb3-4aac-a797-fcf855933b8b/b516f326-afb3-4aac-a797-fcf855933b8b1.gif)
Java课程总结
15/16学年第二学期
《Java课程总结》
班级:
1420561
学号:
13
*******
第1章Java系统环境概述
一.Java语言特点
1.简单性
Java语言简单而高效;
Java的简单性是以增加运行时系统的复杂性为代价的。
2.面向对象
程序=对象+消息
面型对象语言基本特征:
①万物皆对象;
②程序是对象的集合;
③每个对象都有自己的由其他对象所构成的存储;
④每个对象都拥有其他类型;
⑤某个特定类型的所有对象都可以接收同样的消息。
3.可移植性(平台无关性)
程序不经修改就能在不同硬件或软件平台上运行
4.高能性
①高效的字节码;
②多线程;
③及时编译和嵌入C代码
5.分布式
包括数据分布和操作分布
6.动态特性
动态链接机制,将OO特点延伸到系统的运行阶段
7.健壮性和安全性
①Java语言本身的安全性设计;
②编译检查;
③运行检查;
④网络接口级的安全检查。
二.Java运行环境(了解)及程序的运行步骤
1.运行环境
JDK,编写JavaApplet和应用程序的开发环境
2.运行步骤
JVM,Java虚拟机是可以运行Java字节码的假象计算机
JavaApplication程序的建立和运行步骤:
①在NetBeansIDE中创建一个项目;
②建立Java源程序文件;
③解释器解释字节码文件。
三.Application与Applet的区别
类别
不同点
Java Application
Java Applet
运行方式
可以独立运行
不能单独运行
运行工具
普通的Java解释器
浏览器或Applet观察器
程序结构
有且只有一个main方法
没有main方法
受到的限制
可以实现各种操作
不能写操作
第2章Java语言基础
第3章结构控制
一.Java标识符的规定
1.标识符由大小写字母, 下划线, 数字, $符号组成.
2.开头可以是大小写字母, 下划线, 和$符号.(数字不能开头)
3.标识符长度没有限制
4.标识符不能是关键子和保留字
5.标识符的命名最好能反映出其作用
6.java语言对字母的大小写有严格的要求.
7.所有自定义标识符需全部遵循标识符的命名规范.
变量:
①如果是一个单词,单词字母全部小写
②如果由多个单词组成,除第一个单词外,其后所有单词首字母大写
常量:
常量所有单词字母大写, 如果是由多个单词组成, 由下划线连接.
方法:
方法命名规范与变量相似
类:
类名的所有单词首字母均大写.
包:
用小写的倒置域名来命名. 格式:
前缀 + 项目名 + 模块名 + 层
二.Java的数据类型
Java基本类型共有八种,基本类型可以分为三类:
字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。
数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double
1.常量
①整数型常量(4字节):
十进制整数、八进制整数、十六进制整数
②浮点型常量:
小数点形式、指数形式
存储方式:
单精度(4字节)、双精度(8字节)
③布尔型常量:
true、false
④字符型常量:
单引号括起的单个字符、单引号括起来的转义字符、单引号括起来的八进制转义序列
⑤字符串常量:
双引号括起来的0个或多个字符串序列
2.变量
①整数型变量:
byte(1字节)、short(2字节)、int(4字节)、long(8字节)
②浮点型变量:
float(4字节)、double(8字节)
③字符型变量:
char(2字节)
④布尔型变量:
boolean
3.强制类型转换
①隐式类型转换
②显示类型转换
三.分支及循环语句,break,continue
1.分支选择语句
if:
基本形式:
if(布尔表达式)
语句区块1
else
语句区块2
嵌套:
if(布尔表达式1)语句区块1
elseif(布尔表达式2)语句区块2
elseif(布尔表达式3)语句区块3
.
.
else语句区块n+1
注意事项:
①else和if配对
②语句区块有多个语句时要用{}
switch:
基本形式:
switch()
{case值1:
语句区块1:
break;//分支1
case值2:
语句区块2:
break;//分支2
.
.
case值n:
语句区块n:
break;//分支n
[default:
语句区块n+1;]//分支n+1
}
说明:
①switch后表达式类型不允许是浮点数类型和long类型
②case后面的值是与表达式类型相同的常量,值各不相同
③default语句可省去
④当表达式的值与某个case后常量值相等时,就执行后面的语句
⑤去掉brake,执行完第一个匹配的case后仍会执行其余语句
2.循环语句
While:
基本形式:
While(条件)
{
//循环体
}
说明:
(1)此语句是先判断条件,再确定是否执行语句或程序块。
(2)条件为true时,执行循环体的语句或程序块。
反之,不执行循环体。
(3)在循环体中要有改变条件的语句,否则会成为死循环。
do-while:
基本形式:
do{
//循环体;
}while(条件);
说明:
(1)此语句是先执行一次循环体,再判断条件。
(2)条件为true时,再次执行循环体的语句或程序块。
(3)在循环体中要有改变条件的语句,否则会成为死循环。
(4)do-while循环语句即是至少都要执行一次的。
For:
基本形式:
for(设定初始值;条件限定;修改控制变量)
{
//程序代码;
}
3.break,continue
break语句用于终止某个语句块或循环体的执行
continue语句用于跳过某个循环语句块的一次执行
第4章类与对象
第5章消息、继承与多态
一.熟悉类、对象的创建方法
对象是实际存在的一类事物的每个个体,也称实例。
对象具有以下特征
(1)对象标识:
即对象的名字,是用户和系统识别它的唯一标志,可以把对象看成计算机存储器中一块可标识的区域。
(2)属性:
即一组数据,用来描述对象的静态特征。
“数据成员”
(3)方法:
也称为服务或操作,它是对象动态特征(行为)的描述。
“成员方法”
类是对某类事物的描述,是抽象的、概念上的定义。
包括:
(1)类标识:
类的一个有别于其他类的名字。
这是必不可少的。
(2)属性说明:
用来描述相同对象的静态特征。
(3)方法说明:
用来描述相同对象的动态特征。
[修饰符]class类名[extends父类][implements接口名]
{
类成员变量声明
类方法声明
}
二.构造函数、成员方法、封装等概念
构造函数:
(1)构造方法的方法名与类名相同。
(2)构造方法是类的方法,能简化对象数据成员的初始化操作
(3)不能对构造方法指定类型,它有隐含的返回值,该值由系统内部使用。
如果标明返回值则不再是构造函数。
(4)构造方法一般不能由编程人员显式地直接调用,在创建一个类的对象的同时,系统会自动调用该类的构造方法将新对象初始化。
系统正是因为构造方法与类方法名相同,从而找到构造方法的。
但是一旦用户定义了构造函数,系统就不再构建了。
(5)构造方法可以重载,即可定义多个具有不同参数的构造方法。
编译器可以根据这一点判断出用new关键字产生对象时,该调用哪个构造方法。
产生对象的格式是:
new类名(参数列表)其构造过程在下页。
(6)构造方法可以继承,即子类可以继承父类的构造方法。
(7)如果用户在一个自定义类中未定义该类的构造方法,系统将为这个类定义一个缺省的空构造方法。
这个空构造方法没有形式参数,也没有任何具体语句,不能完成任何操作。
成员方法:
成员方法描述对象所具有的功能或操作,反映对象的行为,是具有某种相对独立功能的程序模块。
它与过去所说的子程序、函数等概念相当。
一个类或对象可以有多个成员方法,对象通过执行它的成员方法对传来的消息作出响应,完成特定的功能。
封装:
封装:
也称为信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。
三.访问控制符:
public、private、protected
Public:
如果一个类的修饰符是public,则这个类是公共类。
公共类不但可供它所在包中的其他类使用,也可供其他包中的类使用。
在程序中可以用import语句引用其他包中的public类。
Java规定,在一个程序文件中,只能定义一个public类,其余的类可以是无修饰符的类,也可以是用final修饰符定义的最终类,否则编译时会报错。
Private:
用private修饰的数据成员或成员方法只能被该类自身所访问和修改,而不能被任何其他类(包括该类的子类)来访问和引用。
它提供了最高的保护级别。
当其他类希望获取或修改私有成员时,需要借助于类的方法来实现。
Protected:
用protected修饰的成员变量可以被三种类引用:
该类自身、与它在同一个包中的其他类、在其他包中的该类的子类。
使用protected修饰符的主要作用是允许其他包中的它的子类来访问父类的特定属性。
四.多态机制:
覆盖、重载
覆盖:
含义:
由于面向对象系统中的继承机制,子类可以继承父类的方法。
但是,子类的某些特征可能与从父类中继承来的特征有所不同,为了体现子类的这种个性,Java在子类中定义与父类中已定义的相同名而内容不同的方法叫做覆盖(overload)。
覆盖也叫重写
注意事项:
子类可以根据需要对从基类中继承的方法进行重写
重写的方法必须和被重写的方法具有形同的名称、参数列表和返回类型,否则就不是方法的覆盖,而是子类定义自己特有的方法,与父类的方法无关。
重写方法不能使用比被重写方法更严格的访问权限。
覆盖是基于继承的,如果不能继承一个方法,则不能构成重写,不必遵循覆盖原则。
重载:
含义:
在同一类中定义了多个同名而不同内容的成员方法时,我们称这些方法是重载(override)的方法。
原则:
重载的方法主要通过形式参数列表中参数的个数、参数的数据类型和参数的顺序等方面的不同来区分。
重载方法的返回值类型、访问权限没有特别要求,可以相同也可以不同。
调用时,根据不同的参数列表来调用。
第6章数组
第7章字符串类
一、一维数组的定义、初始化及引用
定义:
类型标识符数组名[];
类型标识符[]数组名;
初始化:
直接指定初值的方式
用关键字new初始化数组
引用:
arrayName[index]
1.数组间相互赋值
2.向成员方法传递数组元素
3.向成员方法传递数组
4.对象数组
二、二维数组的定义、初始化及引用
定义:
类型说明符数组名[][];或
类型说明符[][]数组名;
初始化:
用new操作符初始化数组
直接指定初值的方式
引用:
1.测定数组的长度及数组赋值
“数组名.length”为测定的是数组的行数
“数组名[i].length”表示第i行的列数
数组名作为成员方法的参数
三、String类与String