EchoCow

念念不忘,必有回响

念念不忘,必有回响
  menu
96 文章
89 评论
89201 浏览
4 当前访客
ღゝ◡╹)ノ❤️

《java语言与面向对象程序设计》清华大学出版社 课后习题 答案

好快啊,一个学期又没了。四个月的时光,荒废了两个月,珍惜了两个月,学习了很多东西,自己也在慢慢成长,发觉自己又老了半岁了=-=。

写这个程序的原因,是因为在期末的那段时间,很多同学朋友都来问我这本书上的课后习题怎么做,我也仔细找过这本书到底有没有答案,可是到处找,官网上,文库里等等都找过,只有部分习题有只言片语,官网上的课件也没有习题答案。然后我们又在学习这本书,所以才想到做这么一个程序(如有错误欢迎指出)。下面贴上我们用的教材

教材

不得不说这本书涉及到的知识点很多很全,但是却不是那么易懂,前面几章我学者很是轻松,只要有一点编程基础的基本都能一遍就过,但是后面涉及到了java真正的核心的地方就有点难懂了。所以我建议大家买一本书作为辅助学习资料。

这个程序目前只更新到第十章,书总共十四章,原本期末前就开始弄的,但是后面花时间复习三门数学去了,然后期末完又是一个比赛初赛,上周三比赛完才开始真正的做的。到现在一周半的,零零散散的时间加起来大概两周不到的时间断断续续的完成了。代码大概两千行左右,用来简单的MVC框架(其实也不算)。

自己也遇到很多困难,一个人学习是很苦逼的,自己设计界面,自己添加功能,自己调试所有bug,然后自己测试。里面也有很多题我要花很多时间去想,去设计算法,然后一步一步的实现的。自己能力也有限,而且一直都是自学,有时候也会被一道题卡个几个小时,被一个bug卡个一天,但是终究是完成了。所以可能代码不是最好的,有些代码看看就好,不值得学习。后面几章难度较大,就没有花太多时间去做了。所以只做到了第十章,因为小学期也比较忙。原本想用sql数据库连接登录的,但是想到既然作为学习使用,就没必要那么麻烦,于是自己弄了一个简单登录,固定账号密码。然后对于界面的美化个人要求较高,一遍又一遍的改,然后自己找资料,自学图形界面和IO流,用到了少许的多线程技术。登录界面贴图:
login

自己设计的一个界面,觉得这是我最满意的成果了。这里感谢凡大给我找的图哈哈,配上真的感觉很不错。然后swing组件的界面真的不怎么样,然后自己重写了一下输入框的代码,再添加一个标签用来打开外部URL,个人觉得有难度的地方就是输入框的重写,还有标签的重写以及调用默认浏览器打开外部url。

登录账号:SoftTwo

——————因为是软件工程二班的哈哈

登录密码:BYLZY

—————取自我名字首字母

接下来就是主界面

main

我采用的是swing里面的JTree结构,树形结构个人还是比较喜欢的。而且相比起其他的组件更加美观好用,获取也很简单。

tree

把它加入到了JScrollPane里面,这样即使超出了范围,可以出现滚动条来查看。

不过设置了框体高度900,因为我不是通过获取屏幕大小然后获取相应比例的方式设定其高度宽度的,而是自己固定的,所以如果你电脑的分辨率较小,可能会出现显示不完全的情况,我的分辨率是1920*1080,如果你的不是,比这个小的话,可能会显示不全。后续我更新的时候会补上的。

因为自己比较懒,概念题原本是wps下写的,应该是docx格式,还有些有图片,但我把他复制到了txt下,这时候就出现了一个问题。

wps下部分是Unicode写的,保存时他转化为了ANSI编码,所以导致部分文字或英文有丢失,所以概念题最好在导出的文件夹中找对应的docx来看!

在然后自己写了一个简单的复制,可以把所有文件导出到电脑里面去,

我吧概念题单独封装了一个类,传入参数全部一起使用。 编程题则是把他们作为了一个方法来调用,下面贴图

页面

界面很丑,但是我不想再花 太多时间到swing上去,所以就简单做了一下,可以运行,把结果显示在下面的JTextArea里面,可以查看代码同样显示下面。然后后面几个章节,部分程序我则是为他们写了相应的图形界面,当然也很简陋。

然后自己写了两个JDiago,作为提示和运行时的矿体(swing自带的真心太丑了,虽然我做的也不是很漂亮。。。)

注:在第十章输入输入流中,因为本人过懒=-=就没有为每一个拥有图形界面的程序做文件选择对话框,所以需要手动输入,请注意格式和使用英文下的符号输入,造成的使用不当请见谅!

然后自己简单的写了一个HTML网页,来记一个关于界面。也就是最下方的关于按钮。

程序基本就是这样。但是就在昨天,原本我认为做完了,在IDE上可以运行的时候,我打包成jar拿出来,居然运行部了!!

???

一直报异常,我查了下对应的错误码,找不到文件!!!也就是说他无法读取jar内部的文件。所以原本计划昨天发布的,一直到了今天。唉。然后昨天想了很久,想到的一个办法就是加入文件选择框,让用户选择文件,但是这样机会暴露出来,个人不太喜欢。不过今天下午还是花时间去实行了的。不过幸运的是,我遇到一个贵州的老乡,他也是软件工程的,所以我叫他学长哈哈,他帮我很好的解决了这个问题!十分感谢! 知道今天下午六点才算解决这个问题,

然后我又纠结于一个问题,倘若用户那里没有安装jre或者jdk,这个程序是无法打开的,虽然不太可能有这种情况,但是还是要考虑周到,所以我就打算将他们捆绑成一个exe文件,事实上jar转成exe很是简单,但是要捆绑一个jre就很烦。试了很多工具都不行,也不知道为什么exe4j也不行,可能我操作不对,然后没办法,自己写了个简单bat,用cmd调用指定jre运行jar,然后打包成exe,指定下bat运行,但时在打开的一瞬间会有黑框出现,虽然只是一闪即逝,但是很烦人。然后没办法,又写了个vbs(部分电脑不支持,后续会更新修改),同样调用cmd,但是没有那一闪即逝的黑框,但是运行速度慢了很多,只能凑合着用了。可是问题又来了,打包完我一旦修改图标,杀毒软件立马报毒立马删除(WTF?????)

我都快抓狂了,然后试了很多工具,最后终于找到一个比较好用的ResHacker修改了图标和一些简单配置。再把jre打包进去。然后再跑去我朋友那儿用没有jre的电脑试了几次,终于成功了,整个过程有点复杂有点崩溃,但终究是成功了。成功后喜悦完全掩盖了之前所有的汗水和疲惫。

这款小程序也是花了不少心血,目前更新到第十章,以后会不定期更新。这个小程序只是希望能够帮助到大家。里面所有程序并不全都是我写的,部分题目答案来源于网络,如有侵权请联系本人删除,仅供参考学习。另外希望大家不要只是看看代码,多多动手,学习编程动手学是最快的。下面给上百度云链接:

链接:http://pan.baidu.com/s/1qXXfGOc 密码:ahqj

PS:由于捆绑了jre所以有点大,后面有空我会把没捆绑jre的一起传上来,10M不到。

Pps:欢迎联系本人交流学习哈~~~
2017.7.9

BY:LZY


2017.7.15更新

如果你的电脑上没有安装jdk或jre

自带jre包—— 链接:http://pan.baidu.com/s/1qYFLsp2 密码:yukx

如果你的电脑上安装了jdk或jre

无jre包 —— 链接:http://pan.baidu.com/s/1bpcqjj5 密码:qqqe

念念不忘,必有回响。

如果觉得文章不错或者帮到了您,帮忙点点下面广告呗~谢谢啦~

评论