19201434-杨海涛-Java第八次作业-阶段性总结
一、前言
我们已经学习了八周的Java课程,第二阶段也结束了。这第八次作业也就是一次总结的作业。我总结了这三次作业来我出现的问题。也希望老师给予我批评与指正。
二、作业过程总结
1、第五次作业是对Java中的字符串的应用和应用正则表达式对输入字符串数据进行合法性校验的考察,还有图形类的继承的应用。第六次作业是在第一次作业的图形类的继承上加了多态性的使用,还有使用类的继承、多态性实现简单多项式的导函数的求解,进一步加深了我们对继承的理解,和正则表达式的应用。第七次作业是在前两次作业的基础上,即类的继承、多态性使用时加上接口的应用,加深了对接口的理解。
2、封装性:在父类中他的属性的类型都是pravite,都是私有成员。而要想访问(包括读和写)都必须使用类中定义的方法。当然这些方法都必须要是public,公共的。不然整个类都是私有的,那我就没办法调用里面的东西了。父类中私有的成员就算是子类也不能直接访问
继承性:就是子类并没有定义,但子类的对象是拥有这两个属性的,在父类中拥有的。
多态性:就要看两个类中都有同一个方法。子类可以覆写父类的方法,但要注意,子类的权限必须大于等于父类的权限。比如说父类是public的方法,子类也必须是public。 最大的区别就是,重载是名字相同,参数不同。而覆写是名字和参数都相同。
3、在此次的三次作业的过程中,我也遇到了很多麻烦的问题,虽然有的还尚未解决,但是我学习到了解决问题的方法,
4、第五次作业我就花了非常长的时间去思考,从作业布置下来我就开始看题。但是没能解决掉一些问题,这就导致在编程之中出现了一些问题,用了将近一个星期的时间,第五次作业的效果依旧不理想,第六次作业的难度就更大了,有些题我就不会写了,写了的题也并不能达到满分,希望能在日后解决掉这些问题。第七次作业我花费了很多时间,去问过同学之后,我也没能编写出满意的程序。这几次的作业是难度变大了,所花费的时间也越来越多。
5、编程本质上就是一个逻辑性的问题,如果我们不重视逻辑性,编程将会变得十分困难。每一种语言有每一种语言的逻辑。只有当我们熟悉这个语言的逻辑时,才能编出一个非常完美的程序。所以我们还需要多加学习Java知识,才能够获得更好的编程能力。比如说这三次作业中的一些题,就是因为逻辑问题而做不出来。可能需要后续练习,将逻辑好好训练。才能够更好的编程。还有就是会出现一些格式问题,这些问题可能会影响程序运行。也会导致我们出现一些非常低级的错误。所以平时编程需要注意格式。
二、设计心得
1、这三大特性对于我来说,封装性的概念就是可以把一些非常客观的东西,封装为一个类,并且在调用这个类的时候,需要通过一些特殊手法。这就有效提升了程序的安全性。可以使我们设计的程序变得更加的安全。在我看来继承性,可以使我们编写的程序具有拓展性,甚至还可以对父类进行重写,可以更好地进行功能的拓展。多态性的话,就是可以降低我们的代码量,使得程序更加的简单和高效。
2、单一功能原则规定每个类都应该有一个单一的功能,并且该功能应该由这个类完全封装起来。所有它的这个类的服务都应该严密的和该功能平行(意味着没有依赖),这样会使每一个类更加的健壮,能够有效地降低程序的耦合。
而开放-封闭的原则,则是软件的实体可以被拓展,但已经编写过的程序,就不要再进行修改。简单点来说就是拓展是开放的,而更改就是封装的。
3、通过八周的Java学习,
三、测试的理解与实践
1、测试对于编程的质量十分重要,我们可以通过测试,发现自己编的代码中的错误,漏洞和不足,测试数据的反应在一定程度上保证了编码的质量,如果没有进行测试,靠自己很难发现自己编码的错误与漏洞,可能会导致出现很多bug。并且在测试中我们可以发现很多的问题。使软件更加的全面合理。测试还可以使代码变得更高效和简洁。
2、通过查阅资料这种方法是可行的,同时还应该注意的是,1、每一个测试方法上使用@Test进行修饰;2、每一个测试方法必须使用public void进行修饰;3、每一个测试方法不能携带参数;4、测试代码和源代码在两个不同的项目路径下;5、测试类的包应该和被测试类保持一致;6、测试单元中的每个方法必须可以独立测试。
四、课程收获
这四周,学习起来感觉有些吃力了,仅仅通过老师上课的内容是不足以完成作业的。所以需要课下多花费时间进行Java的学习。通过在网上搜查的内容,也有非常多不理解的东西。希望能够得到解决,通过询问同学等多种方式能够解决不少的问题。学习就是要通过这种方式才能够进行下去。
五、课程建议
1、这三次作业整体难度在增加,题量比之前的要少了许多。感觉是可以适应的。但是每道题的难度都提升了不少。
2、希望老师能够讲得更加详细一点,这样可以加深我们对这些知识的理解程度。以便于做题之后的理解。希望能在课程中加入一段时间进行复习。可以使知识的理解变得更加深刻。
浙公网安备 33010602011771号