20145229吴姗珊 《Java程序设计》小总结

20145229吴姗珊 《Java程序设计》小总结

教材学习内容总结

由于今天考试考到了操作题,根本无从下手,然后才意识到原来之前的学习都是蜻蜓点水,一味的把学习建立在给老师学,为家长学的基础上,每次都只是机械的敲代码,根本没有理解教材,因为今天考试考的是6,7章的内容然后自己一片空白,所以这次想从教材里入手,代码全部都托管了,踏踏实实的学一点东西,一些基础的东西,不是不懂装懂为了博客而博客的东西,至少有一点点改变,让自己的生活不再充满堕落与无知。

继承的必要性

如果某一数据成员改为其他名称,那么包含这个数据成员的所有类都要进行修改,这就造成了维护上的不便。因此需要把相同的程序代码提升为父类

子类

子类只能继承一个父类,继承除可避免类间重复的行为定义外,还有子类和父类存在着is-a的关系
子类如果继承抽象类,对于抽象方法有两种做法,一种做法是继续标志该方法为abstract,另一种做法是操作抽象方法

继承的好处

父类中定义的方法例如getName(),子类无需再次定义,可以直接取用;数据成员例如name改为其他名称,直接改父类,子类无须再次修改。

编译程序

编译程序就是语法检查器,要知道程序片段为何可以通过编译,为何却无法通过编译,就是将自己当作编译程序,检查语法的逻辑是否正确,方式是从=号右边往左读
对drawFight()方法而言,只知道传进来的会是一种Role对象,所以编译程序也只能检查你调用的方法以及Role是不是有定义

定义

有时候重新定义方法时,并非完全不满意父类中的方法,只是希望在执行父类中方法的前、后做点加工
多态定义:抽象来讲,就是使用单一接口操作多种类型的对象。对于课本范例,在showBlood()方法中,即可以通过Role类型操作剑士对象,也可以通过Role类型操作魔法师对象
class前也可以加上final关键字,class前使用了final关键字定义,那么表示这个类是最后一个了,不会再有子类,也就是不能被继承
重新定义:重新定义即是对待同一方法子类的修改
新定义:新定义则是一种合法的方法定义,定义一种新方法,对之前的方法没有任何影响。两者定义格式一样,新定义的产生往往是拼写错误。

super与this

两者可能看起来意思差不多,但是有了父类子类之后,this只是代表了当前类,super则代表了父类
而且两者只能选一个用,在构造的第一行才可以使用

垃圾收集

在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。JVM会把无法通过变量引用的对象当作垃圾对象进行搜集

接口定义

我理解的接口就是一段程序中可能有很多类会有共同的行为,但这些类本身并不具有任何关系,如果使用继承的话程序架构会不合理,所以使用统一的接口表示这些类具有共同的行为

对接口中的定义可以有两种处理方式:
1)操作接口中定义的方法
2)再度将该方法标示为 abstract
接口的出现将“多继承”通过另一种形式体现出来,即 “多实现”
接口与接口之间可以有继承关系

我们注意到该方法只定义了一个接口,但是并没有具体操作方法。如果想要拥有role中的行为必须操作接口。我们用关键字implements操作接口

使用interface来定义抽象的行为外观,方法要声明为public abstract,无须且不能有操作。为了方便,也可以省略public abstract,编译程序会协助补齐。可以使用接口枚举常数,只能定义为public static final。为了方便,也可以省略public static final

其他(感悟、思考等,可选)

任何学科的基础一定是书本,只有认真的看书本,不是一味的为了加分而学习,带着学知识的想法去学习,不管学了多少,至少自己的这一天没有白过,可能生活过得太过安逸,高中那种学习的激情已经没有了,但是我相信,如果建立了一种学习的习惯,那么不管怎样,总会比浑浑噩噩的过完整个大学好。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 100/100 1/1 17/17
第二周 100/100 1/1 15/15
第三周 100/100 1/1 17/17
第四周 380/380 1/1 15/15

参考资料

posted on 2016-03-31 22:01  sssssqyk  阅读(128)  评论(0编辑  收藏  举报

导航