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

参考资料

20145229吴姗珊 《Java程序设计》小总结的更多相关文章

  1. 20145229吴姗珊两天小总结 《Java程序设计》第4周学习总结

    20145229吴姗珊两天小总结 <Java程序设计>第4周学习总结 教材学习内容总结 由于自己的基础不好对知识的理解不透彻,所以这两天的学习还是集中在第六章和第七章,对知识点多了一点理解 ...

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

    20145229吴姗珊 <Java程序设计>2天小总结 教材学习内容总结 由于这周学的内容比较简单,主要是关于日期.日期之类的东西.所以自己从书上看了一些内容 总结了第四章 认识对象 和第 ...

  3. 20145229吴姗珊 《Java程序设计》两天小总结

    20145229吴姗珊 <Java程序设计>两天小总结 教材学习内容总结 第十章 输入\输出 1.java将输入\输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象 2.从应用程序 ...

  4. 20145229吴姗珊 《Java程序设计》课程总结

    20145229吴姗珊 <Java程序设计>课程总结 (按顺序)每周读书笔记链接汇总 第一周:http://www.cnblogs.com/20145229ss/p/5248728.htm ...

  5. 20145229吴姗珊《Java程序设计》2天总结

    20145229吴姗珊<Java程序设计>2天总结 教材学习内容总结 异常处理 1.使用try.catch Java中所有错误都会被包装成对象,可以尝试(try)执行程序并捕捉(catch ...

  6. 20145229吴姗珊 《Java程序设计》第3周学习总结

    20145229吴姗珊 <Java程序设计>第3周学习总结 教材学习内容总结 第四章 认识对象 4.1类与对象 1.对象(Object):存在的具体实体,具有明确的状态和行为 2.类(Cl ...

  7. 20145229吴姗珊 《Java程序设计》第9周总结

    20145229吴姗珊 <Java程序设计>第9周总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交 ...

  8. 20145229吴姗珊 《Java程序设计》第8周学习总结

    20145229吴姗珊 <Java程序设计>第8周总结 教材学习内容总结 第十四章 NIO与NIO2 NIO: InputStream.OutputStream的输入输出,基本上是以字节为 ...

  9. 20145229吴姗珊 《Java程序设计》第7周学习总结

    20145229吴姗珊 <Java程序设计>第7周学习总结 教材学习内容总结 第13章时间与日期 即使标注为GMT(格林威治时间),实际上谈到的的是UTC(Unix时间)时间. 秒的单位定 ...

随机推荐

  1. js获取时间查并实现倒计时读条

    <script type="text/javascript"> $().ready(function () {// 每增加一个切换,就要增加一行,tab1不变,其他的都 ...

  2. c#通过URL地址从服务器上下载文件

  3. leetcode isPalindrome (回文数判断)

    回文很简单,就是正着读和反着读一样,要判断一个数是否为回文数只需要判断正反两个是不是相等即可. 再往深了想一下,只需要判断从中间分开的两个数一个正读,一个反读相等即可. 代码: class Solut ...

  4. 转Python 标准库 urllib2 的使用细节

    Python 标准库中有很多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如 urllib2 这个 HTTP 客户端库.这里总结了一些 urllib2 库的使用细节. 1 P ...

  5. Eclipse个最实用的快捷键

    一个Eclipse骨灰级开发人员总结了他觉得最实用但又不太为人所知的快捷键组合.通过这些组合能够更加easy的浏览源码,使得总体的开发效率和质量得到提升.     1. ctrl+shift+r:打开 ...

  6. php序列化&反序列化坑

    一: 在php中如果我们统一编码是没有什么问题了,但是很多朋友会发现一个问题就是utf8和gbk编码中返回的值会有所区别: php 在utf8和gbk编码下使用serialize和unserializ ...

  7. iWatch开发:UI 组件说明

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2hlbmppZTEyMzQ1Njc4/font/5a6L5L2T/fontsize/400/fill/I0 ...

  8. Python中运算符与while初识

    一.运算符 1.算术运算: 2.比较运算: 3.赋值运算: 4.位运算: 注: ~  举例: ~5 = -6  解释: 将二进制数+1之后乘以-1,即~x = -(x+1),-(101 + 1) = ...

  9. iOS 解决TableView reloadData时cell中图片会闪的问题

    tableView调用reloaddata的时候发现有个小问题,每次刷新图片都会抖动闪烁一下,看着很难受,也影响体验.造成这个问题的主要原因是因为刷新时候切换图片导致.要解决这个问题也很好解决,使用S ...

  10. Nginx 配置指令的执行顺序

    在一个 location 中使用 content 阶段指令时,通常情况下就是对应的 Nginx 模块注册该 location 中的“内容处理程序”.那么当一个 location 中未使用任何 cont ...