OO课程感想

0.前言

     不知不觉,本学期的Java学习已接近尾声,Java是一门主流的编程语言,也是我们学习的重点对象,通过四个月老师的教导以及自己的努力专研,对于Java的入门掌握得还挺不错,收获颇多。

 

1.学习过程总结

      Java的学习是从花费一晚上安装JDK、eclipse以及eclipse配置和调试开始的,再到使用Java实现HelloWorld程序编写、编译、运行。记得当时运行出HelloWorld后自己还截图保存了,但是好像已经找不到了。每学一门编程语言,都会将自己第一次运行成功的截图保留,一张张截图见证了我学习编程的道路👍。接下来就是正式的学习过程了一下总结了Java学习过程中较为重要的几个点:

 

①Java类基础知识

      从基本类型和运算符到选择和循环结构、自定义函数,都与C有很多相似之处,通过自己看MOOC上的视频就能了解,所以老师也没有过多的讲解。

 

②面向对象和类

      从面向过程再到面向对象思想上需要有所转变,这也需要花费一定的时间去理解并转换过来。面向对象就是万物皆是对象。类就是把一类具有相同属性、方法的东西抽象成一个类,对象就是类的一个实例,将类所具有的状态和行为定义为方法和属性。

 

③三大特征:封装、继承、多态

      封装:将类的信息隐藏在类内部,不允许外部程序直接访问,而是通过该类的方法实现对隐藏信息的操作和访问。

      继承:继承是类与类的一种关系,比较像集合中的从属于关系。比如说,苹果属于水果。就可以看成苹果类继承了水果类,那么苹果类就是水果类的子类,水果类就是苹果类的父类。在Java中一个子类只有一个父类。

      多态:多态指的是对象的多种形态,多态有引用多态和方法多态,应用多态使方法变得更灵活。继承是实现多态的基础。

 

④抽象类和接口

      抽象类:抽象类必须使用abstract修饰,用来捕捉子类的通用性的,它不能被实例化,抽象类是被用来创建继承层级里子类的模板。

      接口:接口是抽象方法的集合。如果一个类实现了某个接口,那么它就继承了这个接口的抽象方法。接口只是一种形式,它本身不能做任何事。

      抽象类和接口的区别:1.抽象类只能继承一次,但是可以实现多个接口

                                        2.接口中的变量必须用 public static final 修饰,并且需要给出初始值。所以实现类不能重新定义,也不能改变其值。

                                        3.接口和抽象类必须实现其中所有的方法,抽象类中如果有未实现的抽象方法,那么子类也需要定义为抽象类。抽象类中可以有非抽象的方法。

                                                                                                                                                                 参考自:https://www.cnblogs.com/zzf//10990210.html

 

⑤设计原则

Java设计中应该遵循的原则有六个,但较为了解的只有其中部分,所以以下总结存在漏缺。

     “开-闭”原则:对于扩展是开放的,对于更改是封闭的。开是指在原有的代码上可以进行扩展,比如接口、抽象类。闭是指对于已封装好的代码是不支持修改的。这样的好处是使代码具有灵活性、可扩展性但同时还能保证原代码的正确性。

      单一职责原则:设计的每一个类只能负责一项职责。因为一个类只负责一项职责,所以该类改变时,它带来的影响会大大减低。所以单一职责原则可以提高类的可读性,提高系统的可维护性,变更引起的风险降低。

      里氏替换原则:子类必须能够替换他们的父类,并且不会对程序造成影响。通俗来说来说就是子类不要覆盖父类的非抽象方法,但可以重载。

      迪米特法则:对象与对象之间应该使用尽可能少的方法来关联,避免千丝万缕的关系。

 

⑥JavaFx

      在之前课外学习html与css以及js的过程中,对javafx有些许了解。JavaFx是一种编写图形类界面程序的技术,学习得还不够深入,许多都是基础,例如按钮和布局、鼠标事件等,自己对这方面比较感兴趣,有时间还会继续学下去。

 

⑦正则表达式

      差点忘了这个重点。。这不仅仅是重点还可以说是我的痛点。一直都没怎么弄明白,直到最后一次PTA作业,有了一次从头开始了解它的机会。正则表达式是一种文字模式,使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。学会之后会发现它的魅力并且能够提高效率。从元字符到运算符优先级再到匹配规则,一步步循序渐进,通过菜鸟教程我对正则表达式有了较为全面的学习。(https://www.runoob.com/regexp/regexp-tutorial.html)

 

图片中资料来源:http://c.runoob.com/front-end/854(一个非常好用的工具!还可以在线测试正则表达式!)

 

2.心得

     所谓师傅领进门,修行靠个人。虽然本阶段的Java学习就要告一段落了,但是由于自己还有部分知识点掌握不够,后期还会继续学习加固。毕竟Java是十分重要的,我们不能只看着眼前的期末考试,况且该课程期末考试已经取消,我认为这个举措是很好的,为了防止学生考前恶补侥幸通过,编程语言的学习就是要通过平时的考查,才能真正了解学生的学习情况。

         通过本学期Java课程的学习,我再次感受到学习编程语言,最重要的还是动手操作。虽然上课听起来好像自己全都明白了,一旦动手操作起来,可能就会毫无头绪并且出现很多错误,做到实践与理论相结合你才能有不一样的收获。还有一点,不论学习什么课程,基础真的很重要。就像建房子只有根基打牢了,才能建成高楼。学习是没有捷径可走的只有一步一个脚印才会让自己知识储备丰富起来。

        

 

 

 

 

 

 

 

     

posted on 2020-06-06 15:44  小菓七鹅  阅读(81)  评论(0)    收藏  举报