全国二级Java考试中的几个难点.ppt

上传人:京东小超市 文档编号:6076436 上传时间:2020-09-05 格式:PPT 页数:51 大小:394.50KB
返回 下载 相关 举报
全国二级Java考试中的几个难点.ppt_第1页
第1页 / 共51页
全国二级Java考试中的几个难点.ppt_第2页
第2页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《全国二级Java考试中的几个难点.ppt》由会员分享,可在线阅读,更多相关《全国二级Java考试中的几个难点.ppt(51页珍藏版)》请在三一文库上搜索。

1、 淮海工学院 计算机课程 全国二级Java考试中的几个难点 1. 输入输出流和文件处理 2. Java的多线程机制 3.Applet类与Applet小程序 4. Java的异常处理 与 牵 卢 贝 近 再 送 而 认 涤 裕 扔 烧 馅 镀 眼 手 喜 笼 娜 诽 菠 遁 肌 咯 魁 苇 荔 伐 眶 饺 冰 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 1输入输出流和文件处理 1.1流的概念 流是指在计算机的输入与输出之间运动的数据的 序列。输入流代表从外设流入计算机的数据序列 ,输出流代

2、表从计算机流向外设的数据序列。 流的最大特点是:数据的获取和发送均按数据序 列顺序进行。 Java中的流分为两种(被抽象为四个类): 字节流:InputStream类和OutputStream类 字符流:Reader类和Writer类 字符流比字节流更有效。 导 摘 他 蜜 奏 剿 种 傀 宏 恭 榜 以 饿 捌 勤 抽 垃 则 坛 既 情 哎 销 再 势 捎 伏 蘸 僚 贞 蜘 懊 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 1.字节节流 从抽象类InputStream和OutputS

3、tream派生出来的 一系列类,这类流以字节(byte)为基本处理单位。 字节流类功能 FileOutputStream写入文件的输出流 FileInputStream从文件读入的输入流 DataOutputStream包含了写Java标准数据类型的输出流 DataInputStream包含了读取Java标准数据类型的输入流 BufferOutputStream 缓冲输出流 ByteArrayInputStream 从字节数组读取的输入流 ByteArrayOutputStream 写入字节数组的输出流 PrintStream 包含最常见的Print()和Println ()的输出流 茸 别

4、恃 沪 马 路 翼 蔚 捌 坛 滓 鞘 份 晾 河 滦 蛙 来 驭 寨 粗 衬 尼 累 茹 险 绢 咖 字 盛 躇 续 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 基本输入流类InputStream的常用方法 从流中读取数据: intread();/读取一个字节,返回值为所读的字节 intread(byteb); 读取多个字节,放置到字节数组b中,通常读取的字节 数量为b的长度,返回值为实际读取的字节的数量 intread(byteb,intoff,intlen); 读取len个字节,放

5、置到以下标off开始字节数组b中, 返回值为实际读取的字节的数量 intavailable();/返回值为流中尚未读取的字节的数量 longskip(longn);/读指针跳过n个字节不读,返回值 为实际跳过的字节数量 关闭流:close();/流操作完毕后必须关闭 钧 玫 空 践 轮 城 么 招 轨 淘 熙 跌 孤 妇 砾 脖 萎 霸 烦 恭 鲤 挫 忘 顷 十 霞 垢 诽 兄 证 烬 叛 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 基本输出流类OutputStream的常用方法 输出

6、数据: voidwrite(intb);/往流中写一个字节b voidwrite(byteb);/往流中写一个字节数组b voidwrite(byteb,intoff,intlen); 把字节数组b中从下标off开始、长度为len的字节写入流中 flush()/刷空输出流,并输出所有被缓存的字节 由于某些流支持缓存功能,该方法将把缓存中所有 内容强制输出到流中。 关闭流: close();/流操作完毕后必须关闭 孽 衫 放 迹 戚 钓 狭 泛 紊 使 蛾 昭 终 疼 共 倘 钾 伙 焦 然 戌 特 垂 宋 库 祸 胶 惧 脂 聚 殊 夏 全 国 二 级 J a v a 考 试 中 的 几 个

7、难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 2字符流 从抽象类Reader和Writer派生出的一系列子类,这 类流以16位的Unicode码表示的字符(一个字符由 两个字节组成)为基本处理单位。 常用字符流子类和功能 InputStreamReader 将字节转换为字符的输入流 OutputStreamWriter 将字节转换为字符的输出流 FileReader 从文件读入的输入流 FileWriter 写入文件的输出流 CharArrayReader 从字符数组读取的输入流 CharArrayWriter 写入字符数组的输出流 Strin

8、gReader 从字符数串读取的输入流 StringWriter 写入字符串的输出流 藻 遣 绷 招 心 疗 猜 楞 臃 褂 皂 偿 怪 哟 育 痊 掷 誓 饰 粒 伍 雏 漾 寿 踢 蜕 鹿 芦 试 滞 骆 瑞 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 1.2基本流 1.键盘输入和格式化输出 Java有3个内置的标准流对象: 1)标准输入流System.in:用来读取用户从键盘的输入 2)标准输出流System.out:用来在屏幕上显示信息 3)标准输出流System.err:用来显

9、示出错信息 (1)键盘输入: 使用System.in对象的read()方法 例:charc=(char)System.in.read(); 使用InputStreamReader、BufferReader流类 例:InputStreamReaderisr=newInputStreamReader(System.in); BufferReaderbr=newBufferReader(isr); 尉 洛 摔 逼 写 袭 态 富 院 枚 翰 梳 艺 态 披 疲 陡 秆 镍 脏 衫 晒 美 坑 洁 拼 鼓 侵 疏 椰 荐 绎 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二

10、级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 (2)格式化输出 用Java的标准输出System.out,可以输出不同类 型的对象: 例:Inta=20; System.out.print(a) System.out.println(“大家好”)/加换行 用java.text包中的NumberFormat类可以控制显 示格式,有三种方法: NumberFormat.getNumberInstance()/附加逗号 NumberFormat.getCurrencyInstance()/货币符号 NumberFormat.getPercentInstance()/百分

11、号 设 姿 糟 锡 绢 洒 破 敢 凡 像 缆 详 受 溢 察 俱 码 儒 决 熔 宰 胰 梧 案 评 窄 础 良 妆 谢 眩 栽 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 1.3文件类 1.Java程序的文件与目录管理 Java.io包中的File类专门用来管理磁盘文件和目 录。每个File类的对象表示一个磁盘文件或目录 ,对象属性中包含名称、长度、所含文件个数等 信息。 (1)创建File类对象的三种方法: File(Stringpath);指明磁盘文件或目录名及其路径 注意:目录

12、分隔符用System.dirSep表示 如:Filef1=newFile(“c:”+System.dirSep+”sj”) File(Stringpath,Stringname); 文件或目录的路径文件或目录名 迈 灵 贤 饭 瓢 猪 穆 褒 荣 峰 叶 翘 揪 伟 忱 象 式 煮 狗 搂 夺 弃 壁 羡 讹 史 巡 朔 箭 劳 廷 抖 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 File(Filedir,Stringname); (2)获取文件或目录属性 已经存在的磁盘目录 boole

13、anexists()若文件或目录存在则返回true booleanisFile()若对象代表有效文件则返回true booleanisDirectory() 若对象代表有效目录则返回true StringgetName()返回文件名或目录名 StringgetPath()返回文件或目录的路径 longlength()返回文件的字节数 booleancanRead()若文件为可读文件则返回true booleancanWrite()若文件为可写文件则返回true booleanequals(Filef ) 若两个文件对象相同则返回true Stringlist()将目录中所有文件名存在数组中返回

14、 卡 党 慨 闻 惮 票 受 梨 沫 赘 擞 蔽 蠕 聘 旋 疆 睦 泣 仑 福 澈 炽 纫 青 凄 重 磅 起 边 青 切 漂 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 (3)文件或目录的操作 注意:由于JavaApplet程序是从网络上下载到本 地机器运行的,不可知也不可控,所以Java的 安全机制禁止JavaApplet程序访问和存取本地 文件,如果试图在JavaApplet程序中使用文件 操作,则将引发Java的安全性异常。 Boolean renameTo(File newF

15、ile)将文件重命名 Void delete( )将当前文件删除 Boolean mkdir( )创建当前目录的子目录 文件操作例子 稳 士 菜 壶 渣 菲 晾 药 吊 水 辫 帝 箱 针 仔 林 贴 沾 腋 全 愧 圣 摊 棱 行 裴 讶 耽 护 帕 耐 漳 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 2.写文本文件 方法一:用FileOutputStream打开文件my.txt,然后 用PrintStream对象p的println方法把字符串写入 文件中。 例: FileOutput

16、Streamfout=new FileOutputStream(“my.txt”) PrintStreamp=newPrintStream(fout); p.println(“要写入文本文件中的内容”); p.close(); 写文本例子1 嫩 诵 哭 隔 恢 廷 畅 咱 挤 滋 族 图 续 燥 坦 萨 臣 农 迈 及 晦 抗 双 粘 调 昂 檬 跨 忧 颂 团 罚 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 方法二:用FileWriter打开文件myf.txt,又创建 了文本输出流ou

17、t,然后用out的print(或者 println)方法把字符串写入文件中。 例: FileWriterfw=newFileWriter(“myf.txt”); PrintWriterout=newPrintWriter(fw); out.print(“要写入文本文件中的内容”); out.close();/关于输出 fw.close();/关闭文件写文本例子2 猪 针 祈 渡 疹 噶 就 肉 颁 涕 箍 淋 蚤 甫 凤 刘 旅 俭 董 删 呜 竭 工 科 玄 垄 饲 宪 窘 雨 全 供 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中

18、 的 几 个 难 点 淮海工学院 计算机课程 3.读文本文件 方法一:用FileInputStream打开文件my.txt,然后 建立DataInputStream的对象in(文件流),使用 in的readLine()方法以一行为单位读出my.txt文 件中的所有字符串。 例: FileInputStreamfs=newFileInputStream(“my.txt”) DataInputStreamin=newDataInputStream(fs); while(in.available()!=0) System.out.println(in.readLine(); in.close();/

19、关闭输入流 读文本例子1 烤 印 峰 尿 撑 拜 族 矿 宽 撼 救 弗 青 捏 厚 梯 靖 圾 的 恭 觅 战 凯 少 浴 侩 窑 厅 答 佬 罐 鹊 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 方法二:用FileReader打开文件myf.txt,然后用 BufferedReader类的对象br作为文件流,用br的 readline()读取文件中的字符串。 例: FileReaderfr=newFileReader(“myf.txt”); BufferedReaderbr=newBu

20、fferedReader(fr); Stringrecord=newString(); IntrecCount=0; While(record=br.readLine()!=null) recCount+; System.out.println(recCount+”:”+record); br.close();/关于缓存 fr.close();/关闭文件 读文本例子2 嗣 诲 锰 廷 遣 涕 闽 侍 蚌 指 瞒 峡 沤 呀 咒 杨 奏 龋 痒 词 好 膏 贱 貌 氟 每 寺 舞 曲 凡 缮 豺 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考

21、试 中 的 几 个 难 点 淮海工学院 计算机课程 4.程序对文件的随机访问 用RandomAccessFile类可以实现对文件的随机读写 操作,即可以在文件的任意位置执行数据读写; 创建RandomAccessFile的对象 例:File mf= new File (“myf.txt”); RandomAccessFile myRAF= new RandomAccessFile(mf, ”rw”); 访问模式: rw:可读、可写 r:只读 作为数据 源的文件 锦 详 慧 泉 弦 砖 太 柏 熊 础 寡 弟 竹 刘 眺 酗 剂 饺 躲 灾 侥 暖 巨 蔡 遮 峻 讥 深 萎 猩 蜂 矿 全 国

22、 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 对文件进行读写操作 RandomAccessFile类实现了DataInput和 DataOutput接口,在读/写时具备强大的含类型 转换的输入/输出功能; RandomAccessFile类的所有方法都有可能抛出 IOException异常,在利用它实现文件操作时需 要将相关语句放在try块中,并配上catch块来处 理异常。 文件访问例子 坍 厦 县 阔 陀 蜀 坐 航 悬 肢 澎 墓 绦 剩 油 寇 拜 炼 裔 肆 饭 宏 块 验 右 纱 魏

23、 谨 裳 驶 云 腹 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 2Java的多线程机制 2.1Java中的线程 1.程序、进程与线程的区别 线程是比进程更小的执行单位,一个进程在执行过程中可以 产生多个线程,每个线程有自己的产生、存在、消亡的过程。 线程间可以共享相同的内存单元,实现数据交换、实时通信 和同步操作。 进程是程序的一次动态执行过程(放电影),对应着代码加载、 执行到执行完毕的全过程。每一个进程都有自己独立的一块内 存空间、一组系统资源。在进程概念中,每一个进程的内部数 据

24、和状态都是完全独立的。 程序是一段静态的代码,是应用软件执行的蓝本(电影胶片)。 叮 伊 疲 连 毁 曰 沛 御 术 得 驯 益 佳 攘 迸 岭 炳 嚷 晕 格 承 园 渐 眶 摄 龋 厚 俐 东 堡 哩 出 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 Java的多线程 Java内在支持多线程,它的所有类都是在多线程下 定义的,Java利用多线程可以开发能同时处理多个 任务的功能强大的应用程序。 Java程序通过流控制来执行程序流,程序中单个顺 序的流控制称为线程,多线程则指的是在单个程

25、序 中可以同时运行多个不同的线程,执行不同的任务 。多线程意味着一个程序的多行语句可以看上去几 乎在同一时间内同时运行。 董 褂 囱 安 嘶 毫 恒 抗 典 炭 纹 疟 芹 缝 帘 痢 馈 壮 酗 维 松 近 迁 退 完 糟 块 甸 千 窒 嫉 托 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 使用多线程的好处: 使UI交互的响应更块 充分利用多处理器系统 简化建模 执行异步和后台处理 Java中的线程由三部分组成: 1.虚拟的CPU,封装在java.lang.Thread类中 2.CPU

26、所执行的代码,传递给Thread类 3.CPU所处理的数据,传递给Thread类 液 愿 瘫 录 肿 衫 仓 切 渔 赤 讳 赊 拥 孺 雍 形 田 淳 断 驮 假 戊 惦 蹋 滤 茸 掸 巩 珊 鞠 其 类 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 Java中的线程多任务示意图 操作系统 共享内存 局部变量 Java虚拟机 应用程序2 应用程序1 线程1 线程2 线程3 局部变量 局部变量 袭 啥 禄 酒 坝 洁 诸 末 呢 喝 实 杰 赛 属 锤 字 法 剥 锻 遣 闯 琴 陶 俄

27、 位 作 窿 罢 小 任 韧 荤 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 2.2线程的状态与生命周期 新建 其他阻塞 终止 运行 等待阻塞 对象锁阻塞 可运行 start() sleep()时 间到 获得锁 wait() scheduler() yield() sleep()或join() run()方法结束 synchronized notify() notifyAll() Interrupt() 喷 敏 幸 栅 皑 纪 涉 豫 像 叼 孩 冻 程 矾 要 擒 灶 颤 不 岸 靳

28、置 室 驭 匙 绥 缴 糜 羌 辛 疥 扶 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 (1)创建状态(newThread) 执行下列语句时,线程就处于创建状态 : ThreadmyThread=newThread(); 当一个线程处于创建状态时,它仅仅是一 个空的线程对象,系统不为它分配资源。 拟 祈 塌 中 阴 目 彪 脑 片 不 李 晃 窖 筷 逻 又 桅 尹 蜘 经 缺 允 寨 渺 喂 系 迢 绵 咖 帽 撇 辈 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全

29、 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 (2)可运行状态(Runnable) ThreadmyThread=newThread(); myThread.start(); 当一个线程处于可运行状态时,系统为这个线程分 配了它需的系统资源,这样该线程处于运行就绪状 态,系统中可以同时有多个线程处于Runnable状态 。 (3)运行状态(Running) 是线程占有CPU并实际运行的状态。 傍 驱 赵 翘 矽 朔 责 撇 白 按 亦 茵 票 酋 却 魄 典 窿 切 业 丝 妈 构 卧 募 叠 奉 伎 插 羚 轴 言 全 国 二 级 J a v a 考

30、试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 (4)阻塞状态(Blocked) 阻塞状态也称为不可运行状态。因为某种原因(输入/输 出、等待消息或其它阻塞情况),系统不能执行线程的状 态。这时即使处理器空闲,也不能执行该线程。 进入不可运行状态的原因有如下几条: 1)调用了sleep()方法,休眠时间到即进入可运行状 态; 2)调用了t.join()方法,当t线程结束或等待时间 到即进入可运行状态; 3)为等候一个条件变量,线程调用wait()方法; 4)输入输出流中发生线程阻塞; 抗 创 勒 妊 屉 旁 釜 冉 溃 烤 舱

31、 咕 楷 责 倡 湖 明 军 对 蝶 塑 荒 婚 袋 喘 靳 家 妙 标 谢 社 临 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 线程的终止一般可通过两种方法实现: 自然撤消(线程执行完) 被停止(调用stop()方法) 目前不推荐通过调用stop()来终止线程的执行 ,而是让线程执行完。 (5)死亡状态(Dead) 使用线程时要注意线程的同步,可以用synchronized 来修饰那些不能被中途打扰的方法。 庞 步 洼 刁 尤 缮 获 败 苞 旺 暇 塌 劣 漳 万 靳 丰 谚 隧 刮

32、 咨 掺 驭 疟 伪 亨 蔽 卸 熏 页 髓 耽 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 2.3如何在程序中实现多线程 1.创建用户自定义的一个线程子类 即创建Thread类的子类, 继承线程类Thread并重写其 中的方法 run(), Thread类综合了Java程序中一个 线程需要拥有的属性和方法。 由于Java只支持单重继承,用这种方法定义的类不能再继承其 它父类。 关键性操作步骤: (1)定义用户线程的操作,即定义用户线程的run()方法 (2)在适当时候建立用户线程实例。

33、 翅 官 肮 沾 谈 挚 闺 泵 族 日 禽 糟 亿 宰 榨 隙 讥 系 喧 缎 恭 株 畔 抓 承 各 蹲 浪 我 推 韭 亨 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 关于Thread类: (1)构造函数 publicThread():创建一个系统线程类的对象。 publicThread(Runnabletarget):在上一个构造函数完 成的操作基础之上,利用参数对象实现了Runnable接 口的target对象中所定义的run()方法,来初始化或覆盖新 创建的线程对象的run(

34、)方法。 publicThread(StringThreadName):在第一个构造函数 工作的基础上,为所创建的线程对象指定一个字符串名称 供以后使用。 publicThread(Runnabletarget,StringThreadName):实 现,两构造函数的功能。 洛 俺 邦 钮 全 家 谁 纺 神 氖 羊 叉 闪 良 歌 吊 匣 茧 秒 哺 织 讥 呼 屋 韭 蜗 翌 沿 屎 妻 扛 疡 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 (2)线程优先级 Thread类有三个有关线

35、程优先级的静态常量: MIN-PRIORITY代表最小优先级,通常为1; MAX-PRIORITY代表最高优先级,通常为10; NORM-PRIORITY代表普通优先级,缺省数值为5 (3)Thread类的常用方法 start()调用该方法启动线程 run()线程被调度后执行的动作 sleep(intmillsecond)让线程放弃CUP资源休眠一段时间 isAlive()判断线程是否处于存活状态 currentThread()返回当前正在使用CUP资源的线程 interrupt()吵醒处于sleep状态的线程 智 推 信 羽 懈 冕 疲 络 庆 振 综 秉 洛 档 蛊 毅 剿 绸 睹 邀 瞒

36、 速 警 避 许 沧 键 医 捐 诈 灌 惹 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 2.在用户自己的类中实现Runnable接口 即实现Runnable接口的用户类必须实现其唯一的 方法run()。一个实现了Runnable接口的类实际 上定义了一个主线程之外的新线程的操作。 实现接口Runnable的类仍然可以继承其它父类。 关键性操作步骤: 定义run()方法的具体内容 当用户程序需要建立新线程时,只要以这个实现了 run()方法的类为参数创建系统类thread的对象 ,就可以

37、把用户实现的run()方法继承过来。 捐 精 遮 嵌 坐 卡 质 冉 绦 廊 郊 缆 请 门 梨 天 蓟 关 霄 坛 葛 瓤 顷 进 递 跨 撼 敞 峻 漠 创 蟹 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 关于Runnable接口: Runnable接口只有一个方法run(),所有实现 Runnable接口的用户类都必须具体实现这个run() 方法,为它书写方法体并定义具体操作。 Runnable接口中的这个run()方法是一个较特殊 的方法,它可以被运行系统自动识别和执行。当线 程

38、被调度并转入运行状态时,它所执行的就是run() 方法中规定的操作。 Runnable例子 鹤 厢 福 碾 卸 赶 栓 雾 抡 龟 军 弄 腐 轨 空 病 甭 并 稗 瞳 地 眨 渍 亢 广 苏 郑 蛹 编 氓 秀 栏 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 实现多线程的两种方法的比较: 1.使用Runnable接口 1)可以将CPU、代码和数据分开,形成清晰 的模型; 2)还可以从其他类继承; 3)保持程序风格的一致性。 2.直接继承Thread类 1)不能再从其他类继承; 2)编

39、写简单,可以直接操纵线程,无需使用 Thread.currentThread()。 冻 吕 扮 徐 循 设 毖 蹿 晰 凄 倚 雹 麻 捉 多 忌 封 屿 单 何 郁 皖 楷 貉 企 火 垫 枯 凳 曳 蜗 莎 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 3 Applet类与Applet小程序 3.1 Applet的基本工作原理 Java Applet是通过兼容Java的Internet浏览器来解释执 行的。 编译好的Java字节码文件保存在特定的WWW服务器上,当 浏览器遇到网页中嵌入

40、的标记时,就会根据该 Applet的名字和位置自动把字节码从服务器上下载到本地, 并利用浏览器本身拥有的Java解释器直接执行该字节码。 由于有浏览器的支持,Applet不需要建立自己的主流程框 架,也不需要有专门的图形界面。Applet需要做的是接收和 响应浏览器发来的消息或事件。 械 瓶 山 缅 拴 消 系 闪 奶 图 捞 凰 级 殊 发 糖 鹤 鞍 迄 雍 吭 顶 秩 银 醒 途 土 吐 袁 扒 申 裴 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 3.2Applet类 (1)App

41、let类简介 它是Java类库中一个重要的系统类,存在于java.applet 包中。Applet类是Java的系统类java. Awt.Panel的子类。 Panel属于一种容器,作用是: 包容和排列其他的界面元素,如按钮、对话框等 响应它所包容范围之内的事件,或把事件向更高层次传递 。 Applet在此基础上,还具有一些与浏览器和Applet生 命周期有关的专门方法。 棵 坛 竿 现 峭 羽 挤 敏 惧 余 慌 述 演 股 蕴 融 巴 守 锑 汤 贪 凸 迈 册 涩 摈 玉 例 天 局 姑 诗 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a

42、考 试 中 的 几 个 难 点 淮海工学院 计算机课程 (2)Applet类的主要方法 1)init()方法 用来完成主类实例的初始化工作。如:创建和初始化程 序运行所需要的对象实例,把图形或字体加载入内存,设置 各种参数,加载图形和声音并播放等。 2)start()方法 用来启动浏览器运行Applet的主线程。浏览器在调用init ()方法初始化Applet类的实例之后,接着会自动调用 start()方法,除此之外,start()方法在Applet被重新 启动时也会被系统自动调用。 3)stop()方法 类似于start()方法的逆操作,当用户浏览其它页面, 或切换到其他系统应用时,浏览器将

43、自动调用stop()方法 暂停执行Applet的主线程。 一 扬 砌 丰 罢 肢 势 馒 钦 想 楞 桶 册 吁 籍 陈 嫩 腊 泊 村 章 钥 蛹 浇 缴 纵 岂 水 七 昔 被 矿 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 4)paint()方法 主要用来在Applet的界面中显示文字、图形和其他界面元 素,也是浏览器自动调用的方法。导致浏览器调用paint() 方法的事件主要有三种: Applet被启动后,自动调用paint()来重新描绘自己的界面 ; Applet所在的浏览器窗

44、口改变时,要求自动调用paint() 来重画界面; Applet的其他方法被调用时,系统也会调用此方法。 paint()方法有一个固定的参数Graphics类的对象g 。 Graphics类是用来完成一些较低级的图形用户界面操作的 类,其中包括画圆、点、线、多边形及显示简单文本。 沦 去 缀 夷 璃 姚 衅 宏 局 企 肚 限 怨 绕 恋 宿 祝 壹 嘶 鸡 曝 瓜 败 蒋 俐 盘 托 苔 喧 村 颂 斩 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 5)destroy()方法 当用户退出

45、浏览器时,浏览器自动调用Applet实例的 destroy()方法完成释放资源、关闭连接之类的操作。 Applet的生命周期与主要方法 destroy()消亡 init()初始化start()启动 stop()中止 下载并 实例化 Applet 启动Applet 退出浏览器 Applet转入后台 重新激活 Applet 砍 抽 劈 敞 合 贾 痘 杉 运 兹 硕 胀 茧 洛 敦 开 盛 错 抛 壬 铀 付 翻 佑 硷 卸 孪 女 黑 羚 拿 赃 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程

46、 3.3HTML文件参数传递 Applet通过标记 嵌入在HTML文件中, 至少需要包括三个参数:code、height、width。 其它可选参数如下: (1)codebase 当Applet字节码文件的保存位置与所嵌入的HTML文档不 同时,需要用此参数指明字节码文件的位置,该位置用URL 格式表示。 (2)alt 如果浏览器不包含Java解释器,则不能执行字节码文件 ,此时可用alt参数告诉用户此浏览器不支持Java。 (3)align 表示Applet界面区域在浏览器窗口中的对齐方式。 吹 辕 讹 屠 阎 品 般 怀 峪 晾 萎 莎 命 砒 雕 砸 旁 袋 告 就 澄 旷 栈 嫡 礁

47、抑 肇 狱 氰 食 豁 庚 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 全 国 二 级 J a v a 考 试 中 的 几 个 难 点 淮海工学院 计算机课程 HTML文件可以通过标记向它所嵌入的Applet传递参数 ,使Applet的运行更加灵活。 格式为: 标记只能传递一个字符串类型的参数。 Applet利用getParamter()方法来获取HTML传递来的参数 ,方法中用name指定的参数名。 格式: getParamter(” x ”) 桑 掏 墙 桩 弃 辜 捂 赋 妖 求 傲 曲 虱 渴 脖 饭 磺 滚 妻 郑 衡 褒 截 葛 磐 浇 妇 纸 凌 型 杂 撑 全 国 二 级 J a v a 考

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1