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

教材学习内容总结

第六章 继承与多态

6.1继承共同行为

1.继承基本上就是避免多个类间重复定义共同行为

简单的类的定义

使用swordsMan继承Role,其中,SwordsMan就是子类,Role就是父类

类似的使用Magician继承Role类

如何确定真的有继承

继承的好处之一就是,就是若你要将name、level、blood改为其他名称,就只要修改Role.java就可以了

2.子类只能继承一个父类,继承除可避免类间重复的行为定义外,还有子类和父类存在着is-a的关系
3.编译程序就是语法检查器,要知道程序片段为何可以通过编译,为何却无法通过编译,就是将自己当作编译程序,检查语法的逻辑是否正确,方式是从=号右边往左读
4.继承的好处之一就是若你要将name、level、blood改为其他名称,那就只要修改Role.java就可以了,只要是继承Role的子类都无需修改
5.对drawFight()方法而言,只知道传进来的会是一种Role对象,所以编译程序也只能检查你调用的方法以及Role是不是有定义。

6.子类如果继承抽象类,对于抽象方法有两种做法,一种做法是继续标志该方法为abstract,另一种做法是操作抽象方法

6.2继承语法细节

1.protected:被声明为protected的成员,相同包中的类可以直接存取,不同包中的类可以在继承后的子类直接存取
2.有时候重新定义方法时,并非完全不满意父类中的方法,只是希望在执行父类中方法的前、后做点加工
3.新定义方法要注意,对于父类中的方法权限,只能扩大不能缩小,若原成员为public,子类中重新定义时不可为private或protected
4.构造函数可以重载,父类中可重载多个构造函数,如果子类构造函数中没有指定执行父类中哪个构造函数,默认会调用父类中无参数构造函数
5.class前也可以加上final关键字,如果class前使用了final关键字定义,那么表示这个类是最后一个了,不会再有子类,也就是不能被继承
6.撰写程序常常有些看似不合理但又非得完成的需求。有些不合理的需求,本身确实不合理,但有些看似不合理的需求,其实是可以通过设计来解决的

第七章 接口与动态

7.1接口定义行为

1.对于“定义行为”,可以使用interface关键字定义
2.接口的出现将“多继承”通过另一种形式体现出来,即 “多实现”
3.类与接口之间是实现关系,而且类可以继承一个类的同时实现多个接口
4.接口与接口之间可以有继承关系
5.操作某接口时,对接口中定义的方法有两种处理方式,一是操作接口中定义的方法,二是再度将该方法标示为abstract。以java的语意来说,继承会有“是一种”的关系,操作接口则表示“拥有行为”

7.2接口语法细节

1.在java中,可使用interface来定义抽象的行为与外观,如接口中的方法可声明为public abstract
2.使用interface来定义抽象的行为外观,方法要声明为public abstract,无须且不能有操作。为了方便,也可以省略public abstract,编译程序会协助补齐。可以使用接口枚举常数,只能定义为public static final。为了方便,也可以省略public static final
3.匿名内部类:就是内部类的简化写法
4.格式为:new 外部类名或者接口名(){覆盖类或者接口中的代码

教材学习中的问题和解决过程

本来4,5章的内容就不是很懂,然后现在学6,7章,不懂的还是挺多的,那个继承每次敲书上的代码都会出现错误,说找不到那一类的符号。然后第七章感觉结合在一起的类容就更多了,对排除错误的能力还有欠缺,代码照着书上敲的,知识越来越深入了。

代码调试中的问题和解决过程

不知道照着书上敲的代码还会出现错误,显示找不到类所提示

本周代码托管截图


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

这周的学习中主要是自己敲代码,因为以前C语言学习对程序设计没什么兴趣,导致对java没什么兴趣然后也不想学,现在还是愿意认真的学习,让自己掌握多一点的知识,在计算代码行数中因为wc软件下载了解压不行,所以还是自己数的,等询问同学后将会使用软件重新修改。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 80/100 1/1 15/15
第二周 100/100 1/1 17/17
第三周 100/100 1/1 17/17
2天知识总结 100/100 1/1 15/15
第四周 430/100 1/1 14/14

参考资料

20145229吴姗珊 《Java程序设计》第4周学习总结的更多相关文章

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

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

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

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

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

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

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

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

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

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

  6. 20145229吴姗珊《java程序设计》第2次实验报告

    20145229吴姗珊<java程序设计>第2次实验报告 实验名称 Java面向程序设计,采用TDD的方式设计有关实现复数类Complex. 理解并掌握面向对象三要素:封装.继承.多态. ...

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

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

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

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

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

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

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

    20145229吴姗珊 <Java程序设计>第5周学习总结 教材学习内容总结 第八章 异常处理 1.设计错误对象都继承自java.lang.Throwable类 2.Java中所有错误都会 ...

随机推荐

  1. leetCode 15. 3Sum (3数之和) 解题思路和方法

    3Sum  Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find ...

  2. IDEA下配置Spring Boot的热部署

    © 版权声明:本文为博主原创文章,转载请注明出处 devtools简介 spring-boot-devtools会监听classpath下的文件变动,并且会立即重启应用(发生在保存时机),因为其采用的 ...

  3. synchronized 锁优化

    synchronized 在jdk 1.7之前是重量级锁,独占锁,非公平锁.jdk1.7之后,synchronized引入了 偏向锁,自旋锁,轻量级锁,重量级锁 自旋锁 当线程在获取锁的时候,如果发现 ...

  4. 安卓手机的后门控制工具SPADE

    SPADE,一款安卓手机的后门控制工具,安全研究人员可以以此了解和研究安卓后门原理. 首先,我们从网站www.apk4fun.com下载apk文件,如ccleaner.然后,我们安装spade git ...

  5. Http和Socket 优劣比较 使用场景选择_转

    转自:http://www.cnblogs.com/webwlsong/p/3198712.html 了解HTTP和Socket之前先对网络7层协议有个了解: 7 应用层6 表示层5 会话层 4 传输 ...

  6. Educational Codeforces Round 27 F. Guards In The Storehouse

    F. Guards In The Storehouse time limit per test 1.5 seconds memory limit per test 512 megabytes inpu ...

  7. 为什么是kafka(二)

    回答几个网友提出的问题,不清楚的能够看上一篇内容. 1.  kafka的删除策略应该怎么配置?为了提升性能.我是不是应该1小时删除一次消费过的数据. 全然能够依据磁盘大小配置.仅仅要磁盘足够用,全然不 ...

  8. linux 常用的17个性能指标

    1.Average load:Average number of processes simultaneously in Ready state during the last minute.   上 ...

  9. share(发包方面)

    share(发包方面) 接收所有map发过来的包,这个是GS线程驱动的 { for (;;) { //... if(!itMap.second->RecvData(Pkt)) break; if ...

  10. (比赛)B - 棋盘问题(dfs)

    B - 棋盘问题 Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%lld & %llu Practice POJ ...