整理郝斌老师javaSE复习大纲

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一部分: 基础知识

第二部分: 面向对象
1.封装

对医疗事物抽象所得到的一个概念

对象
一个具体的事物

构造函数
不能有返回值
方法名与类名相同
可以有多个

默认生成无参无方法体无返还值的构造函数
自己一旦定义,编译器将不再生成默认的构造函数
生成一类对象是能且只能调用其中的一个构造函数

static
凡是static修饰的成员都是静态成员
静态成员都是属于类的

非静态的可以访问静态的
静态的不可以访问静态的

通过类名只能访问一个类中的非私有静态成员
私有静态成员也不可以通过对象名访问

this
非静态方法默认都含有一个this指针
this代表正在调用本方法的对象

final
修饰类
该类不能被继承
修饰方法
该方法可以被继承但不能被重写
修饰属性
表示该属性能且只能被赋一次值,赋值方式有两种,并且只能选择其中的一种来赋值:
1.定义的同时显示初始化
2.g构造函数中初始化

函数重载
同名不同参
返回值不能作为是否构成函数重载的依据

2.继承
定义
子类继承了父类成员

注意的问题:
非私有成员才可以被子类继承
重写:
重写方法必须和被重写方法具有相同的方法名称,参数列表,返回值类型
重写方法的访问权限不能小于被重写方法


3.多态
定义:
同一代码可以随上下文的不同而执行不同的操作,俗称多态
即:
一个父类的引用它即可以指向父类对象也可以指向子类对象
它可以根据当前时刻指向的不同,自动调用不同对象的方法

注意事项:
通过父类的引用本身指向的就是一个子类对象时,
我们才可以把父类的引用强制转化为子类的引用

相关知识:
抽象类
一个抽象类通常含有抽象方法
只重写了抽象类部分抽象方法的类也必须的被标记为 abstract
不可以定义抽象类对象,但抽象类可以实现多态

接口
接口中的方法都是public abstract
不可以定义抽象对象,但接口却可以实现多态
重写接口方法时public不能省
举例:
线程的创建
事件的处理
容器的组织方式
serializable接口

第三部分 :高级部分
1.异常
定义
运行的错误

分类
无法处理的问题
可以处理的异常
必须处理的异常
是Exception子类但不是RunntimeException的子类

可处理可不处理的异常
是RunntimeException的子类

注意问题;
finally{......}一定会执行
先捕获子类异常,在捕获父类异常,

循序不能颠倒
重写方法抛出异常的范围不能小于被重写方法抛出异常的范围
假设f方法抛出了A异常,则f方法有两种方式处理A异常
1.throws A
2.try{.....}catch(){.....}

2.线程
定义:
一个程序运行时的不同执行路径

创建线程的方式:
继承Therad类
实现Runnable接口

线程的同步
多个线程操作统一资源,并且要求这些操作中的若干个操作不能被中断,这时就需要考虑线程同步的问题
线程同步是通过synchronized来实现
synchronized可以修饰两种
代码块
方法(默认锁定的是this)
示例;
买票

线程的通信
有时多个线程只有彼此互相协作才可以完成某个功能,这是就需要通信

实现方式:
wai 和 notify()/ notifyAll()

示例:
生产和消费
3.包
包的生产与运行:
package语句必须是第一条语句
类名是包名和类名的组合
只有在整个包的最上层目录才可以运行

同包;
参见图
不同包的互相访问
参见图

jar包的生成与jar包的使用
葡萄jar包的生成
jar-cvf要生成的jar包的名字。jar*

可运行jar包的生成:
jar cvfm 要生成的jar包的名字.jar 1.txt*

4.GUI
容器和组件的关系:
容器是组件,组件不一定是容器

常见的布局管理器
BorderLayout -- Frame
FlowLayout -- Panel
GridLayout
事件模型:
必须要明白哪些操作是编译自动完成的,哪些操作是程序员手动处理的
程序员只需要做两件事:
告诉事件源可以产生哪些事件
设计好可以处理这些事件的事件监听器

内部类:
在一个类内部定义的类叫内部类
内部类的方法可以访问外部类的所有成员
外部类的方法不可以直接访问内部类的任何成员

一定要明白产生内部类的原因
如果一个类A要使用B类的所有成员,并且A类不需要被除B以外的其他类访问,则我们可以把A定义成B的内部类

因此几乎不存在直接生成内部类对象的问题
因此几乎不存在外部类需要访问内部类成员的问题

因此几乎不存在直接生成内部类对象的问题
因此几乎不存在外部类需要访问内部类成员问题
匿名类;
匿名类是内部类的一种极端表现形式
匿名类可以访问外部类的所有成员和包裹本匿名类方法中的final的局部变量

5.IO
定义:
如果一个类是用来完成程序和设备之间的数据传输,则这个类有一个特殊称谓叫做流

流和类的关系
流一定是类,但类不一定是流

分类:
输入流 输出流
字节流 字符流
原始流 包裹流

常用流介绍:

四大基本抽象流
InputStream OutputStream
Reader Writer

字节流和字符流的区别:
字节流可以处理所有格式的文件
字符流只能处理文本格式的文件

文件流
FileInputStream FileOutputStream
FileReader FileWriter

缓冲流
BufferedInputStream BufferedOutputStream
BufferedReader BufferedWriter

转化流
OutputStreamWriter InputStreamReader
例子:
编程实现吧用户从键盘输入的字符保存到一个String对象中

数据流
DataInputStream DataOutputStream
数据流可以把基本类型数据的二进制直接读入或写出
例子:
编程实现将long类型数据写入byte数组中
然后在从byte数组中把该数据读出

Print流
PrintStream PrintWriter
Print流可以把基本类型数据格式化后的字符串输出
例子:
编程实现把键盘输入的数据写如A文件,如果输入有误
则把出错信息写入B文件

Object流
ObjectInputStream ObjectOutputStream
Object流可以把一个对象直接写入erudite或读出

6.容器:
定义:
如果一个类是专门用来存放其他类对象的,则这个类有
另外一个特殊的词叫做容器

容器和类的关系:
容器一定是类,但类不一定是容器

Collection 接口
Set 接口
无序,不允许重复
实现类:
TerrSet HashSet

List 接口
有序,允许重复
实现类:
ArrayList LinkedList

Map 接口
定义:
即保存数据本身,也保存数据的主键的一种接口
实现类:
HashMap TreeMap

hashCode()和equals()方法
参见ppt

Collection类
该类提供了对Collection接口实现类的排序,倒置,查找等功能

Comparable 接口
通过该接口的方法可以指定出对象之间比较的标准
凡是需要进行对象的比较排序的场合均可以考虑实现该接口

Iterator 接口
利用该接口提供的方法我们可以遍历所有容器中的元素


The end
2015年9月2日09:51:50

相关文档
最新文档