201521123053《Java设计与程序》第六周学习总结
---恢复内容结束---
1. 本周学习总结
1.1 面向对象学习暂告一段落,请使用思维导图,以封装、继承、多态为核心概念画一张思维导图,对面向对象思想进行一个总结。
注1:关键词与内容不求多,但概念之间的联系要清晰,内容覆盖面向对象的核心内容即可。
注2:颜色要少、连线不要复杂,必要的时候要在连线上进行说明。
1.2 可选:使用常规方法总结其他上课内容。
答:这周上了两节课,第一节讲了对象克隆(Cloneable接口)、嵌套类(Nested classes)、局部类(Local class)、匿名类、还有图形。
嵌套类中非static又被称为内部类(inner class)、内部类可以访问外围类的属性和方法,包括private修饰的属性和方法。局部类与内部类相似。匿名类没有类名,匿名类内部用Lambda表达式更简化代码。
第二节课讲了GUI事件处理、监听器(ActionListener)、焦点事件、鼠标相关事件(MouseEvent)、事件适配器、标签、选择组件。
@Override? 作用:覆盖父类的方法。
2. 书面作业
1.clone方法
1.1 Object对象中的clone
方法是被protected修饰,在自定义的类中覆盖clone方法时需要注意什么?
答: 首先说下protected修饰的方法只能在本包里被访问,自定义的类覆盖Object里的clone方法需要注意的又两个
one 实现Cloneable 接口
two @Override public Object clone() throws CloneNotSupportedException
1.2 自己设计类时,一般对什么样的方法使用protected进行修饰?以作业Shape
为例说明。
答:需要保密,不能外泄的类,只允许在包里访问或被子类访问的类,比如作业shape中的父类即可用protected修饰,这样只有子类能访问。
1.3 在test1包中编写简单的Employee
类,在test2包中新建一个TestProtected
类,并在main中尝试调用test1包中的Employee的clone方法克隆一个新对象,能否成功?为什么?
答:必须不能成,第一;不在同个包里;其次特text2包中的TestProtected 类没有implements.
附上代码图
2. 使用匿名类与Lambda表达式改写题集面向对象2-进阶-多态接口内部类的题目5-2
答:
结果
``` fang 19
lan 20
li 18
lian 17
..................
lian 17
li 18
fang 19
lan 20 ```
##3.分析下列代码,回答shapeComparator所指向的对象与Comparator接口有什么关系?
```Comparator shapeComparator = new Comparator() {
@Override
public int compare(Shape o1, Shape o2) {
//你的代码
}
}; ```
答:代码分析:使用匿名类,直接建立一个新对象,然后编写compara覆盖父类的,再进行比较,简单的说是shapeComparator实现Comparator接口。
##4.GUI中的事件处理
**4.1 写出事件处理模型中最重要的几个关键词。**
答:事件源;事件对象;监听器;
4.2 使用代码与注释,证明你理解了事件处理模型。
答:模型对吧!
···public static void main(String[] args) {
JButton b = new JButton("Press Me!");//事件源
b.addActionListener(new ButtonHandler());//注册监听器
}
private static class ButtonHandler implements
ActionListener{//监听器
public void actionPerformed(ActionEvent e) {
}
}
}···
3. 码云上代码提交记录及PTA实验总结
3.1. 码云代码提交记录
201521123053《Java设计与程序》第六周学习总结的更多相关文章
- 201871010123-吴丽丽 《面向对象程序设计(Java)》第十六周学习总结
201871010123-吴丽丽 <面向对象程序设计(Java)>第十六周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...
- 201271050130-滕江南-《面向对象程序设计(java)》第十六周学习总结
201271050130-滕江南-<面向对象程序设计(java)>第十六周学习总结 博文正文开头格式:(2分) 项目 内容 这个作业属于哪个课程 https://www.cnblogs.c ...
- 201871010111-刘佳华《面向对象程序设计(java)》第十六周学习总结
学号-姓名<面向对象程序设计(java)>第十六周学习总结 实验十四 应用程序归档与线程初步 实验时间 2019-12-12 第一部分:理论知识总结 1.程序与进程的概念 ‐程序是一段静 ...
- 201871010107-公海瑜《面向对象程序设计(java)》第十六周学习总结
201871010107-公海瑜<面向对象程序设计(java)>第十六周学习总结 项目 内容 这个作业属于哪 ...
- 201871010133-赵永军《面向对象程序设计(java)》第十六周学习总结
201871010133-赵永军<面向对象程序设计(java)>第十六周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...
- 201871010136 -赵艳强《面向对象程序设计(java)》第十六周学习总结
201871010136-赵艳强<面向对象程序设计(java)>第十六周学习总结 项目 内容 这个作业属于哪个课程 <任课教师博客主页链接>https://www.cnbl ...
- 201871020225-牟星源《面向对象程序设计(java)》第十六周学习总结
201871020225-牟星源<面向对象程序设计(java)>第十六周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...
- 达拉草201771010105《面向对象程序设计(java)》第十六周学习总结
达拉草201771010105<面向对象程序设计(java)>第十六周学习总结 第一部分:理论知识 1.程序与进程的概念: (1)程序是一段静态的代码,它是应用程序执行的蓝 本. (2)进 ...
- 201871010104-陈园园《面向对象程序设计(java)》第十六周学习总结
201871010104-陈园园<面向对象程序设计(java)>第十六周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...
- 201871010105-曹玉中《面向对象程序设计(java)》第十六周学习总结
201871010105-曹玉中<面向对象程序设计(java)>第十六周学习总结 项目 内容 这个作业属于哪个过程 https://www.cnblogs.com/nwnu-daizh/ ...
随机推荐
- TestNG的组测试和组中组测试
在编写测试的过程中,我们经常遇到只想执行个别或者某一部分/某一类型的测试用例,这时我们可以使用TestNG的分组测试方法 分组测试在配置时,TestNG执行的原则是:只保留最小集合进行执行 看代码: ...
- HDU 5067 Harry And Dig Machine:TSP(旅行商)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5067 题意: 给你一个n*m的地图,地图上标着对应位置的石子数.你从左上角出发,每次可以向上下左右四个 ...
- .NET并行计算和并发2-Foreground and Background Threads
后台线程不会使托管执行环境处于运行状态,除此之外,后台线程与前台线程是一样的. 一旦所有前台线程在托管进程(其中 .exe 文件是托管程序集)中被停止,系统将停止所有后台线程并关闭.
- python 第二天
list,tuple,dict,set list,tuple,dict,set 是今天学习的四种 Python 内置类型 list list 即数组,有序的集合,可以使用索引的方式来访问 list 的 ...
- 提升tomcat服务器性能的七条经验
在线上环境中我们是采用了tomcat作为Web服务器,它的处理性能直接关系到用户体验,在平时的工作和学习中,归纳出以下七种调优经验. 1. 服务器资源 服务器所能提供CPU.内存.硬盘的性能对处理能力 ...
- 如何将Windows7系统中“运行”历史记录全部清除
如何将Windows7系统中“运行”历史记录全部清除.. 如何将Windows7系统中“运行”历史记录全部清除 1.任务栏空白处按下鼠标右键,在右键菜单栏中选择“属性”, 2.切换到“开始菜单”选项卡 ...
- 记一次Spring aop的所遇到的问题
由来 项目中需要实现某个订单的状态改变后然后推送给第三方的功能,由于更改状态的项目和推送的项目不是同一个项目,所以为了不改变原项目的代码,我们考虑用spring的aop来实现. 项目用的是spring ...
- Centos 6.5 安装 python3.6.2、pip9.0.1、ipython6.1
说明:由于Cenots 6.5 默认是安装的 python 2.6.6 要想同一台主机使用多个python版本,不能影响原来的版本,因为系统很多还依赖于python,比如 yum python ...
- JavaScript笔记之第四天
HTML DOM (文档对象模型) 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model). 查找 HTML 元素 通常,通过 JavaScript,您需要操作 ...
- Java-break,continue,return用法
当年的我也算是基础小王子,但是长时间的不用导致我与他们越来越陌生了,所以我要把他们记在我的本本上. 首先我们要明白,java中到底有多少个循环关键字? 答:没错,就是3个,他们分别是:for(初始值: ...