




已阅读5页,还剩61页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 复习 回顾所有课内练习 课后练习与实验代码 知识点的复习以教学PPT为准 2 第一讲Java语言概述 3 Java的特点 平台独立性和可移植性 面向对象 OO 4 OOP和POP编程思路的差别 1 围绕 正在发生什么 编写 面向过程的编程 2 围绕 谁将被影响 编写 面向对象的编程 所有计算机程序都由两类元素组成 代码和数据程序两种写法 以代码为核心或以数据为核心进行组织编写 5 OOP和POP编程思路的差别 面向对象的编程 1 围绕它的数据 对象 和为这个数据严格定义的接口来组织程序 2 面向对象的程序实际上是用数据控制对代码的访问 纯粹面向过程的编程 1 程序具有线性执行的特点 2 面向过程的程序可以认为是代码作用于数据 6 第二讲标识符 保留字和数据类型 第三讲运算符 表达式和语句 7 第四讲类与对象 1 类的基础2 对象的声明与使用3 变量与对象的生命周期4 进一步研究方法和类 8 类 类就是对象的模板 它定义一类对象所能共同拥有的属性和共同的行为 对象就是类的实例 注 对于面向对象的程序而言 一个类可以生成若干个类的对象 先有类的定义才有属于该类的对象 不存在不属于某个具体类的对象 9 构造方法 构造方法在对象创建时被调用 构造方法与类同名 构造方法没有任何返回值 10 在JAVA中 同一个类中的2个或2个以上的方法可以有同一个名字 只要它们的参数声明不同即可 该方法就被称为重载 overload 这个过程称为方法重载 methodoverload 方法重载 11 static关键字 类中被static修饰的属性或方法 完全独立于该类的任何对象 能够在类的任何对象被创建之前访问 当声明一个对象时 并不产生static变量的copy 所有对象共享同一个static变量 12 static关键字 声明为static的方法有以下几条限制 它们仅能调用其他的static方法 它们只能访问static属性 它们不能以任何方式引用this或super 13 命令行参数 可以通过命令行参数将信息传递给main 命令行参数是程序执行时在命令行中紧跟在程序名后的信息 命令行参数作为字符串存储在传递给main 的String数组中 14 练习 利用static变量设计实例计数器 该计数器可以统计并判断该类创建的对象的次数是否大于3 15 第五讲数组与字符串 16 第六讲继承 1 继承的基本概念2 关键字super的使用3 重载与改写4 创建多级类层次5 何时调用构造方法6 深入探讨Fatherf newSon 7 关键字final的使用 17 1 继承的基本概念 被继承的类叫超类或父类 superclass 继承超类的类叫子类 subclass 例如 A是一个类 使用关键字extends来创建A的子类BclassA classBextendsA 使用关键字extends继承一个类 18 1 继承的基本概念 成员的访问和继承 子类可以继承父类中的所有成员 包括父类中所有静态与动态的属性与方法 但是它不能访问被声明成private的成员 注 1 构造函数不被继承 2 在java中规定 一个父类可以有多个子类 一个子类只能有一个父类 19 2 关键字super的使用 关键字super允许在子类中调用父类的构造函数 20 2 关键字super的使用 子类中构造方法的调用顺序 调用子类的构造方法时 无论子类的构造方法中是否用到了super 每个父类默认的 或无参数的 构造方法都将执行 21 子类中某个方法的名字与父类中的某个方法名字一样 但二者的参数不同 这时子类重载了父类中的某个方法 3 改写 Override 与重载 Overload 22 3 改写 Override 与重载 Overload 子类中某个方法的名字与父类中的某个方法名字一样 参数也一样 这时子类改写 或覆盖 了父类中的某个方法 父类中定义的方法将被隐藏 关键字super允许在子类中调用父类中被子类覆盖的成员 23 7 关键字final的使用 关键字final有三个用途 1 创建一个常量 如 finalintNUM 100 2 使用final阻止方法被子类覆盖 如 finalvoidmeth 24 7 关键字final的使用 1 使用final阻止类被继承 如 finalclassA 25 3 继承的意义和用途 继承是面向对象的一块基石 它允许创建分等级层次的类 继承可以大大提高程序代码的可重用性 并可缩短软件的开发周期 同时 继承又对程序的删改和增添提供了方便 从而大大提高了程序的可扩展性和可维护性 26 课内练习 某高等院校中的学生可以分为两类 本科生 Undergraduate 和研究生 Graduate 凡是学生都有名字 年龄和学位 其中本科生拥有专业 研究生拥有研究方向 请编写一段程序 可以用于输出学生信息 注 该程序应具备一定的扩展性 如其他院校可能拥有专科生 博士生 本科生也可能分为工学方向和理学方向等 27 第七讲接口与程序包 1 抽象类的概念2 接口3 程序包4 访问控制 28 抽象类与接口 抽象类或接口位于类层次结构中的顶层 抽象类或接口中所定义的抽象方法决定了类层次结构是否能顺利地通过继承来解决问题域中的问题 29 使用关键字abstract描述一个抽象类或抽象方法 如 abstractclassA abstractvoidcallme 抽象类 30 接口 使用关键字interface定义一个接口如 interfaceinterfaceA voidcallback 使用关键字implements可以让一个类实现一个接口或同时实现多个接口 多继承 31 程序包 package 包的引入增加了访问控制的另一个维度 类成员访问表 32 课内练习 创建Rodent 啮齿动物 Mouse 老鼠 Gerbil 沙鼠 Hamster 大颊鼠 等的一个继承分级结构 在基础类中 提供适用于所有Rodent的方法 并在衍生类中覆盖它们 从而根据不同类型的Rodent采取不同的行动 创建一个Rodent数组 在其中填充不同类型的Rodent 然后调用自己的基础类方法 看看会有什么情况发生 33 第八讲异常处理 8 1异常处理基础8 2异常类型8 3异常处理8 3 1运行时异常 隐式处理 8 3 2非运行时异常 显式处理 try catch finally8 3 3非运行时异常 显式处理 throw与throws 34 异常处理可以有以下几种 对运行时异常可以不做显式的处理 对非运行时异常必须做显式的处理 1 使用try catch finally语句捕获异常 2 通过throws子句将异常抛出给上一级处理 异常处理基础 35 下面是显式的异常处理的通常形式 try 被监视的可能会产生错误的代码块 catch ExceptionexOb 捕捉到某个异常对象exOb后对该异常的处理 finally 无论try代码块中的异常是否存在 绝对都要执行的代码 异常处理 36 异常处理 1 通过throw关键字手动抛出明确的异常2 利用throws子句将异常抛出给上一级处理 37 异常在继承关系中的特殊性 父类抛出的异常范围应比子类大 38 第9讲Java的输入输出流 9 1流概念9 2Java用于输入输出流的类9 3数据流的使用 39 输入流 1 输入流通过打开一个连接到数据源 文件 内存或网络端口上的数据 的输入流 程序可以从数据源上顺序读取数据 40 输出流 2 输出流通过打开一个连接到目标的输出流 程序可以向外部目标顺序写数据 41 Java用于输入输出流的类 java io中的基本流类 说明 它们是抽象类 不能直接创建对象 42 File类 File类的对象主要用来获取文件本身的一些信息 如 文件所在的目录 文件的长度 文件读写权限等 但是不涉及对文件的读写操作 43 课后练习 字符流的使用 使用文件流实现简单的留言板 留言信息由作者 标题与留言内容三个部分组成 通过标准输入流System in获取用户输入的三部分信息 使用BufferedWriter将留言信息保存在d message txt文件中 使用BufferedReader将留言信息逐行读出 44 课后练习 提示 1 存入文件的每条留言的结构为 author title content n 2 通过BufferedReader类的readLine 方法读取出留言后 使用StringTokenizer类对1中的留言结构进行分析 通过 字符析取出留言的三个部分 分别显示 3 如何为每条留言编号 如何将新留言插入文件尾部 追加记录 45 第10讲图形用户界面 10 1Applet基础10 2Applet的执行10 3简单的Applet显示方法 46 10 1Applet基础 Applet与Application的主要区别在于它们的执行方式不同 Application是使用命令行命令直接运行 从其main 方法开始运行的 Applet则是在浏览器中运行的 首先必须创建一个HTML文件 通过编写HTML语言代码告诉浏览器载入何种Applet以及如何运行 47 10 1Applet基础 Applet的生存周期方法 48 Applet的生命周期 10 1Applet基础 Applet的生存周期 49 课内练习 编写一个Applet 要求如下 利用Color的构造函数Color floatred floatgreen floatblue 产生随机颜色的字符串 在HTML窗口中使用Applet输出随机颜色的字符串 欢迎使用留言板 字符串的字体为宋体 类型为加粗 大小为30镑 每当窗口改变时 字符串的颜色都会改变 50 10 7AWT事件类型 低级事件ComponentEvent 组件事件 组件尺寸的变化 移动 ContainerEvent 容器事件 组件增加 移动 WindowEvent 窗口事件 关闭窗口 窗口闭合 图标化 FocusEvent 焦点事件 焦点的获得和丢失 KeyEvent 键盘事件 键按下 释放 MouseEvent 鼠标事件 鼠标单击 移动 高级事件 语义事件 ActionEvent 动作事件 按钮按下 TextField中按Enter键 AdjustmentEvent 调节事件 在滚动条上移动滑块以调节数值 ItemEvent 项目事件 选择项目 不选择 项目改变 TextEvent 文本事件 TextFiled中文本对象改变 51 10 7AWT事件处理模型 组件 事件发生者 触发一个相应类型的事件此事件由相应类型的Listener 事件监听者 接收并处理 52 10 9布局 Layout Java awt包中共定义了5种布局管理器类 它们分别是FlowLayout BorderLayout CardLayout GridLayout和GridBagLayout 每个布局管理器类对应一种布局策略 当一个容器选定一种布局策略时 它应该创建该策略对应的布局管理器类的对象 并将此对象设置为自己的布局管理器 53 10 9布局 Layout 没有指明布局管理器 则panel与applet都使用缺省的FlowLayout布局策略 而Window Frame Dialog使用BorderLayout布局策略 没有布局管理器的容器 其中的对象会互相覆盖 遮挡 影响使用 所以必须为每个容器设置一个合适的布局管理器 容器设置布局使用方法 setLayout 布局对象 54 课后练习 使用applet的布局策略分别实现留言板的用户登录 用户注册 发表留言和查看留言四个界面 通过处理各个界面中的Button TextField TextArea上的事件 分别实现留言板中的用户登录 用户注册 发表留言和查看留言功能 本次课后练习只需分别实现4个功能即可 不要求整合功能 55 第11讲多线程编程 11 1线程的基本概念11 2线程的生命周期11 3线程的创建 56 11 2线程的生命周期 线程的生命周期 一个线程从创建到消亡的过程线程的生命周期可分为四个状态 1 创建状态2 可运行状态3 不可运行状态4 消亡状态 57 线程的状态转换图 调度器 11 2线程的生命周期 58 1 创建状态当用new操作符创建一个新的线程对象时 该线程处于创建状态 处于创建状态的线程只是一个空的线程对象 系统不为它分配资源通过调用start方法启动该线程 11 2线程的生命周期 59 2 可运行状态执行线程的start 方法将为线程分配必须的系统资源 安排其运行 并调用线程体中的run 方法 这样就使得该线程处于可运行 Runnable 状态 这一状态并不是运行中状态 Running 因为线程也许实际上并未真正运行 11 2线程的生命周期 60 3 不可运行状态当发生下列事件时 处于运行状态的线程会转入到不可运行状态 调用了sleep 方法 线程调用wait方法所等待的特定条件的满足 线程输入 输出阻塞 试图获取某个对象的同步锁 调用了某个线程对象的join 方法 11 2线程的生命周期 61 返回可运行状态 处于睡眠状态的线程在指定的时间过去后 如果线程在等待某一条件 另一个对象必须通过notify 或notifyAll 方法通知等待进程条件的改变 如果线程是因为输入 输出阻塞 输入 输出完成 11 2线程的生命周期 62 4 消亡状态当线程的run方法执行结束后 该线程自然消亡 11 2线程的生命周期 63 11 3线程的创建 在Java中通过run方法为线程指明要完成的任务 有两种技术来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中职高考对口升学(理论考试)真题卷【教育与体育大类】模拟练习
- 2025年膨化硝铵炸药项目合作计划书
- 安全培训效果课件制作
- IMC-EB10-LY3012218-生命科学试剂-MCE
- IAP-ligand-5-生命科学试剂-MCE
- 2025贵州遵义市赤水市第一批就业见习招募34人考前自测高频考点模拟试题及答案详解(名师系列)
- 2025年芜湖市残疾人综合服务中心编外工作人员招聘2人考前自测高频考点模拟试题附答案详解(黄金题型)
- 2025年弹射救生系统项目合作计划书
- 2025北京市海淀区第二实验小学教育集团招聘模拟试卷有完整答案详解
- 2025河南信阳市人民医院招聘合同制人员2人模拟试卷及答案详解(夺冠)
- 颅脑损伤营养支持
- 深基坑边坡稳定性计算书
- 《国际政治经济学大纲》详解课件
- Q∕SY 06327-2020 二氧化碳驱油气田集输管道施工技术规范
- 译林版六年级英语上册 Unit 3 第2课时 教学课件PPT小学公开课
- 中国电影的发展史
- 电镀时间与理论厚的计算方法
- Word操作练习题
- 药用高分子材料学(78)
- 公路桥梁技术状况评定分值计算EXCEL表格(梁桥-拱桥)
- ISO 1110-95 尼龙-测试样品的加速调节
评论
0/150
提交评论