20155217 2016-2017-2 《Java程序设计》第4周学习总结

教材学习内容总结

第六章
  • 在java中,继承时使用extends关键字,private成员也会被继承,只不过子类无法直接存取,必须通过父类提供的方法来存取(如果父类愿意提供方法的话)。
  • 检查多态语法逻辑是否正确,方法是从=右边开始读:右边是不是一种左边呢?
  • 多态:单一接口操作多种类型的对象。
  • java中规定内含抽象方法的类,一定要在class前标示abstract,表示这是一个定义不完整的抽象类。
  • 被声明protected的成员,相同包中的类可以直接存取,不同包中的类可以在继承后的子类直接存取。
  • java中有public、protected和private三个权限关键字,但实际上有四个权限范围。
  • 如果想取得父类中的方法,可以在调用方法前,加上super关键词。重新定义方法时要注意,对于父类中的方法权限,只能扩大不能缩小。如果返回类型是父类中方法返回类型的子类,也是可以编译的。
  • 如果子类构造函数中没有指定执行父类中哪个构造函数,默认会调用父类中无参构造函数。如果想执行父类中某构造函数,可以使用super()指定。this()和super()只能选择一个调用,且必须在构造函数的第一行。
第七章
  • 对于“定义行为”,可以使用interface关键词定义,接口中的方法不能操作,直接标示为abstract,而且一定是public。类要操作接口,必须使用implements关键字。操作接口时,对接口定义的方法有两种,一是操作接口中定义的方法,二是再度将该方法标示为abstract。
  • 对于接口语法的判断,方式是“右边是不是拥有左边的行为”。
  • 类可以操作两个以上的类,也就是拥有两种以上的行为。类可以同时继承某个类,并操作某个接口。接口可以继承另一个接口,也就是继承父接口行为,再在子接口额外定义行为。接口可以继承别的接口,也可以同时继承两个以上的接口,同样也是使用extends关键词,这表示继承父接口的行为。
  • 使用interface来定义抽象的行为外观,方法要声明public abstract,无须且不能操作。为了方便,也可以省略public abstract。
  • 可以使用接口枚举常数,只能定义public static final。为了方便,public static final可以省略。
  • 如果有临时继承某个类或操作某个接口并建立实例的需求,而这类子类或接口类只能使用一次,不需要为这些类定义名称,这时可以使用匿名内部类来解决这个需求。匿名类语法为:
new 父类()|接口(){
//类本体操作
};

部分代码截图:

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

  • 问题1:

    既然在java中,子类只能继承一个父类,那如果在定义类时没有使用extends关键字指定继承任何类,则说明了什么?

  • 解决方案1:

    在java中,任何类追溯至最上层父类,那一定是java.lang.Object,也就是java中的所有对象。所以定义类时没有使用extends继承则一定是继承了java.lang.Object。

  • 问题2:

    如果有两个接口都定义了某方法,那操作这两个接口的类会不会有错误?

  • 解决方案2:

    不会有错误,会照样通过编译。但在设计上要思考一下:两个接口都定义的方法是否表示不同的行为。

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

按照课本敲得代码没有问题,但实际自己写代码并没有头绪,还要多问多想多练。

代码托管

  • 代码提交过程截图:

  • 代码量截图:

上周考试错题总结

  • 错题及原因
  1. System.out.printf(""+25+52);
  2. System.out.printf(25+52+"");

答案:

  1. 2552
  2. 77

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

java的学习明显感觉到越来越吃力,后面的内容与前面的知识点联系紧密,但往往对前面知识掌握不熟练,拖了后腿。希望以后能改善。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 5/5 1/4 20/20
第二周 140/145 1/5 18/38
第三周 330/451 1/6 16/54
第四周 578/1038 1/7 18/72

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式

:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难,软件工程 估计方法

参考资料

20155217 2016-2017-2 《Java程序设计》第4周学习总结的更多相关文章

  1. 20155217 2016-2017-2《java程序设计》第一周学习总结

    20155217 2016-2017-2<java程序设计>第一周学习总结 浏览教材,根据自己的理解每章提出一个问题 java平台和java编程语言的区别? 怎样使用IDE来管理原始码与位 ...

  2. 20155207 2016-2017-2 《Java程序设计》第九周学习总结

    20155207 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立 ...

  3. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  4. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  5. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  8. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  9. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  10. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

随机推荐

  1. testng对执行失败的用例,再次执行

    前段时间在网络上看到通过重写TestNG的接口,可以再次执行失败的测试用例,于是学习了,我之前的做法是当自己的脚本中碰到异常,就自动调用方法本身来达到再次执行用例的目的,这个过程中有设定重试的次数 对 ...

  2. [转]正确设置nginx/php-fpm/apache权限

    核心总结:php-fpm/apache 进程所使用的用户,不能是网站文件所有者. 凡是违背这个原则,则不符合最小权限原则. 根据生产环境不断反馈,发现不断有 php网站被挂木马,绝大部分原因是因为权限 ...

  3. js 小程序获取本周七天

    data: { weekdays:['','','','','','',''] },     onLoad: function (options) { let that = this; let now ...

  4. rpc 协议规范 之 rmi http webservice 和 一些框架

    RPC(Remote Procedure Call)是远程调用,是一种思想,也是一种协议规范.简单地说就是能使应用像调用本地方法一样的调用远程的过程或服务,可以应用在分布式服务.分布式计算.远程服务调 ...

  5. 利用ZooKeeper简单实现分布式锁

    1.分布式锁的由来: 在程序开发过程中不得不考虑的就是并发问题.在java中对于同一个jvm而言,jdk已经提供了lock和同步等.但是在分布式情况下,往往存在多个进程对一些资源产生竞争关系,而这些进 ...

  6. 计算机网络【6】—— 从浏览器输入URL到显示页面发生了什么

    当在浏览器地址栏输入网址,如:www.baidu.com后浏览器是怎么把最终的页面呈现出来的呢?这个过程可以大致分为两个部分:网络通信和页面渲染. 一.网络通信 互联网内各网络设备间的通信都遵循TCP ...

  7. java与C++相比增加和缺少的特性--持续更新

    缺少的特性 java值类型中没有无符号数 java没有运算符重载语法 java中没有struct和union等用户自定义值类型 java中没有虚函数的概念,所有函数默认具有虚函数的特性 java采用单 ...

  8. VMware 三种网络模式的区别

    VMware 三种网络模式的区别 VMware 三种网络模式的区别 我们首先说一下VMware的几个虚拟设备 VMnet0:用于虚拟桥接网络下的虚拟交换机 VMnet1:用于虚拟Host-Only网络 ...

  9. svmrank 的误差惩罚因子c选择 经验

    C是一个由用户去指定的系数,表示对分错的点加入多少的惩罚,当C很大的时候,分错的点就会更少,但是过拟合的情况可能会比较严重,当C很小的时候,分错的点可能会很多,不过可能由此得到的模型也会不太正确,所以 ...

  10. 【刷题】BZOJ 2301 [HAOI2011]Problem b

    Description 对于给出的n个询问,每次求有多少个数对(x,y),满足a≤x≤b,c≤y≤d,且gcd(x,y) = k,gcd(x,y)函数为x和y的最大公约数. Input 第一行一个整数 ...