冯志霞201771010107《面向对象程序设计(java)》第八周学习总结梓颜

(6)掌握对象浅层拷贝与深层拷贝方法;

(7)掌握Lambda表达式语法;

(8)了解内部类的用途及语法要求。

comparator和comparable区别:

3.Java的clone()方法⑴clone方法将对象复制了一份并返回给调用者。一般而言,clone()方法满足:①对任何的对象x,都有x.clone()!=x//克隆对象与原对象不是同一个对象②对任何的对象x,都有x.clone().getClass()==x.getClass()//克隆对象与原对象的类型一样

浅拷贝是指拷贝对象时仅仅拷贝对象本身(包括对象中的基本变量),而不拷贝对象包含的引用指向的对象。深拷贝不仅拷贝对象本身,而且拷贝对象包含的引用指向的所有对象。举例来说更加清楚:对象A1中包含对B1的引用,B1中包含对C1的引用。浅拷贝A1得到A2,A2中依然包含对B1的引用,B1中依然包含对C1的引用。深拷贝则是对浅拷贝的递归,深拷贝A1得到A2,A2中包含对B2(B1的copy)的引用,B2中包含对C2(C1的copy)的引用。

大家先思考一个问题,为什么需要克隆对象?直接new一个对象不行吗?

答案是:克隆的对象可能包含一些已经修改过的属性,而new出来的对象的属性都还是初始化时候的值,所以当需要一个新的对象来保存当前对象的“状态”就靠clone方法了。那么我把这个对象的临时属性一个一个的赋值给我新new的对象不也行嘛?可以是可以,但是一来麻烦不说,二来,大家通过上面的源码都发现了clone是一个native方法,就是快啊,在底层实现的。

提个醒,我们常见的Objecta=newObject();Objectb;b=a;这种形式的代码复制的是引用,即对象在内存中的地址,a和b对象仍然指向了同一个对象。

而通过clone方法赋值的对象跟原来的对象时同时独立存在的。

先介绍一下两种不同的克隆方法,浅克隆(ShallowClone)和深克隆(DeepClone)。

在Java语言中,数据类型分为值类型(基本数据类型)和引用类型,值类型包括int、double、byte、boolean、char等简单数据类型,引用类型包括类、接口、数组等复杂类型。浅克隆和深克隆的主要区别在于是否支持引用类型的成员变量的复制,下面将对两者进行详细介绍。

一般步骤是(浅克隆):

1.被复制的类需要实现Clonenable接口(不实现的话在调用clone方法会抛出CloneNotSupportedException异常),该接口为标记接口(不含任何方法)

2.覆盖clone()方法,访问修饰符设为public。方法中调用super.clone()方法得到需要的复制对象。(native为本地方法)

2、实验内容和步骤

实验1:导入第6章示例程序,测试程序并进行代码注释。

测试程序1:

l编辑、编译、调试运行阅读教材214页-215页程序6-1、6-2,理解程序并分析程序运行结果;

l掌握接口的实现用法;

l掌握内置接口Compareable的用法。

测试程序2:

l编辑、编译、调试以下程序,结合程序运行结果理解程序;

interfaceA

{

doubleg=9.8;

voidshow();

}

classCimplementsA

publicvoidshow()

{System.out.println("g="+g);}

classInterfaceTest

publicstaticvoidmain(String[]args)

Aa=newC();

a.show();

System.out.println("g="+C.g);

测试程序3:

l在elipseIDE中调试运行教材223页6-3,结合程序运行结果理解程序;

l26行、36行代码参阅224页,详细内容涉及教材12章。

l掌握回调程序设计模式;

packagetimer;/**@version1.012015-05-12@authorCayHorstmann*/importjava.awt.*;//要引用ToolKit类importjava.awt.event.*;importjava.util.*;//要引用Date类importjavax.swing.*;//要引用JOptionPane类importjavax.swing.Timer;//要引用Timer类publicclassTimerTest{publicstaticvoidmain(String[]args){ActionListenerlistener=newTimePrinter();//接口不能实例化对象,要用实现该接口的类实例化//每过10秒执行一次Timert=newTimer(1000,listener);t.start();//引用timer类定时执行JOptionPane.showMessageDialog(null,"Quitprogram");//出现对话框提示程序是否停止System.exit(0);//终止程序}}classTimePrinterimplementsActionListener{publicvoidactionPerformed(ActionEventevent){System.out.println("Atthetone,thetimeis"+newDate());Toolkit.getDefaultToolkit().beep();//每一个动作完成后监听器响一次}}

测试程序4:

l调试运行教材229页-231页程序6-4、6-5,结合程序运行结果理解程序;

l掌握对象克隆实现技术;

l掌握浅拷贝和深拷贝的差别。

实验2:导入第6章示例程序6-6,学习Lambda表达式用法。

l调试运行教材233页-234页程序6-6,结合程序运行结果理解程序;

l将27-29行代码与教材223页程序对比,将27-29行代码与此程序对比,体会Lambda表达式的优点。

注:以下实验课后完成

实验3:编程练习

l编制一个程序,将身份证号.txt中的信息读入到内存中;

l按姓名字典序输出人员信息;

l查询最大年龄的人员信息;

l查询最小年龄人员信息;

l输入你的年龄,查询身份证号.txt中年龄与你最近人的姓名、身份证号、年龄、性别和出生地;

l查询人员中是否有你的同乡。

实验4:内部类语法验证实验

实验程序1:

l编辑、调试运行教材246页-247页程序6-7,结合程序运行结果理解程序;

l了解内部类的基本用法。

实验程序2:

l编辑、调试运行教材254页程序6-8,结合程序运行结果理解程序;

l了解匿名内部类的用法。

实验程序3:

l在elipseIDE中调试运行教材257页-258页程序6-9,结合程序运行结果理解程序;

l了解静态内部类的用法。

本次实验我还是不太明白克隆,他主要特点是什么?难道只是为了解决浅层拷贝和深层拷贝查过资料也没看懂,还有就是监听器的使用也还是不太明白,课后会尽量查资料解决的

THE END
1.“八字签名,句句封神”封神春节档电影成本,封神6亿,射雕4亿,哪吒5亿,唐探8亿,蛟龙10亿 辣条小剧场 7跟贴 奇怪!沈阳男孩捡到26万巨款,找到失主时,对方却一脸疑惑:袋子是我的,可我只丢了2万啊! 读史 1跟贴 宋雨琦祝大家蛇年发大财,在镜头上签名! 八卦疯叔 《封神2》角色设定引争议,圣人形象与原著大相径庭 晨光微露 《封神2》https://m.163.com/dy/article/JN9TM0HS0556128G.html
2.贝的个性签名专题模板贝的个性签名图片素材下载我图网贝的个性签名专题为您整理了97个原创高质量贝的个性签名图片素材供您在线下载,PSD/JPG/PNG格式贝的个性签名模板下载、高清贝的个性签名图片大全等,下载图片素材就上我图网。https://so.ooopic.com/sousuo/9559511/
3.艺术签名设计黄华彬艺术字体分类发现字体简介: 艺术签名设计黄华彬 【阿西】爱不退散48 常规 语言:中文 英文 下载 3d0013 语言:英文 下载 zxgg0011 语言:英文 下载 3d0020 语言:英文 下载 001 语言:英文 下载 3d0011 语言:英文 下载 3d0023 语言:英文 下载 3d02 语言:英文 下载 yinhao 语言:英文 下载传http://www.qiuziti.com/fontlist2?id=1090876
4.设计师签名免费签名设计生成器在线签名生成转换设计师签名网是中国领先的艺术签名制作平台,免费签名生成转换器支持硬笔签、时尚签、立体签、行楷签等效果,集成草体签、瘦金签、板书签、童体签等功能智能实现在线签名设计,可生成png,svg,pdf格式,请牢记设计师签名 www.ssjjss.comhttp://www.ssjjss.com/
5.武汉军区军医学校第二学员队军校军花再聚首就连简单的迎接签名,也彬彬有礼,大方得体。几十年军营生活养成了这样落落大方的气质…… 军人的勇敢、忠诚、团结和奉献影响了我们的一生。 尘世间,每个人的内心里都有一些难舍难分的情结,隐藏在我们心底的,就是这难以忘怀的军人情结。 多年不见热情洋溢的拥抱表述了我们永恒的爱心 https://www.meipian.cn/mpnlvpl
6.梁小霞安葬,关于梁小霞安葬有什么说法你喜欢哪一种设计我可以帮给你放大 你都给我放大吧。可以吗 问问上传大小图片有限制,我已经将放大的签名设计图发送至你的邮箱了。 看到了,可以再帮我设计个吗!陈欢欢,而且我不喜欢我的签名,我觉得不好看,有没有别的啊 https://www.jingguangshengcheng.com/bzxw/2760.html
7.明星艺术签名设计在线生成WWW235255签名设计[免费在线设计www.235255.com]就是设计签名,一般人写名字只是通过一般的汉字规则,这样写出来的名字往往很一般,没有什么艺术性,而签名设计就是由签名设计师根据中国传统书法、美术构图及字与字之间的联系来进行设计的。经过设计以后是签名书写方便、造型奇特、潇洒大方。 https://www.douban.com/note/546887037/
8.霞篆书个性签名签名免费霞篆书个性签名签名免费生成中华签名网是一个可以自动生成签名设计效果的网站https://www.qianming.cn/keywords/960414
9.施卓珠海算命施卓珠海算命-免费名字签名设计传统周易八字预测,长文四柱八字预测,施卓珠海算命-免费名字签名设计施卓 女命 出生于:1984年03月19日18时00分 星期一出生在湖北襄樊 东经:112.14度 北纬:30.02度 襄樊当地时间比标准北京时间慢31分钟平太阳时:1984/3/19 17:28:33 真太阳时:1984/3/19 17:21:22http://www.ssqm.com/show_46A3313.aspx
10.“5·19中国旅游日”如何策划出来的?彝人小哥1、徐霞客铜像从宁海出发,由研究徐霞客的专家,驴友代表共同护送,途径徐霞客游历之地,最后到达北京,在北京举行赠送仪式。 2、刻有“霞客在手,天下好走”文字的小铜像,作为礼品赠送嘉宾。 3、铜像设计:徐霞客迈出腿,做起步姿势,以强调宁海起步的主题,区别其他地方的徐霞客像。 https://www.shangyexinzhi.com/article/1869264.html
11.混合加密算法的改进和设计方案AET摘要:分析了对称加密算法AES和非对称加密算法ECC的加密过程和特点,并结合两种算法的特点设计了一种混合的加密体制,在避免了对称加密算法复杂的密钥分配体制的同时保证了加密的效率和强度。同时引入了改进的数字签名算法,在对信息来源的真实性和完整性进行验证的同时,避免了复杂的模逆运算,提高了运算效率。 http://www.chinaaet.com/article/3000019396
12.推荐三八妇女节活动方案合集10篇(三) 海报签名送礼物 设计关爱女性海报,凡是在海报上签名的,可以免费送会员卡及100元内衣抵用券一张。让顾客感受到我们真正在让利给顾客,提升顾客的忠实度。 (四) 限时抢购 全场内衣限时低价抢购(9:30—10:00、12:30—1:00、16:30—17:00),吸引新老顾客对***内衣的关注度,同时促进内衣现场销售。 https://www.yjbys.com/fangjia/jieri/1973921.html
13.名字设计签名免费–第3页–名字乐园仙灵连明 东京安吉 宗室友翠 震雷伟杰 北国山天 长安颖馨 坠星嘉德 上清紫薇 西域又松 京城沛柳 平原依丹 北国锐阵 深渊安蕾 孤云碧玉 西风清馨 北风秋晴 云来翠槐 百花梦桃 稻妻庆敏 水月珠玉 璃沙莹白 岭南希慕 雾都永春 太山修明 南风依萱 北陆建霞 http://www.imbaname.com/archives/383112/3
14.《董其昌传》签名钤印本(随书附赠藏书票)著名设计师鲁明静倾心打造。 作者 孙炜 // 据我所知,此前并没有人写过《董其昌传》这样的书,有的仅仅是数百字的小传。而关乎董其昌的那些大量的、生动翔实的素材,像满天繁星,散落在浩瀚的史料之中,需要后人去钩沉、去汇集,然后似拼积木那样,努力去依照历史的本来面目,还原一位真实的董其昌! https://m.thepaper.cn/newsDetail_forward_10060045
15.外部系统连接SFDC,获取SFDC侧的数据16.设计模式:单例模式 17.Spring 2.5之后,使用标注,管理类的声明周期(在Spring容器,IOC中的生命周期) 18.栈内存,堆内存 19.代码检查工具(比CheckStyle更好) 20.AES 21.在服务器端设定参数 22.让公网可以访问自己家电脑的服务 23.IP地址的分类 23.1.扩展 https://blog.csdn.net/sxzlc/article/details/103450258