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

教材学习内容总结

  • 继承是面向对象最显著的一个特性。继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。

  • Java继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。

  • 多态的特征是表现出多种形态,具有多种实现方式。或者多态是具有表现多种形态的能力的特征。或者同一个实现接口,使用不同的实例而执行不同的操作。

  • 多态的使用可以增强程序的可扩展性及可维护性,使代码更加简洁。
    不但能减少编码的工作量,也能大大提高程序的可维护性及可扩展性。

  • 接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。

  • 重新定义行为:接口操作相同,只是操作内容不同的两个方法提升至父类中进行定义

  • 父类中定义了方法,实际上如何执行只有子类知道,父类里的方法内容是空的,子类继承父类,再对方法进行定义。

  • 重新定义子类中某个方法时,子类必须撰写与父类方法中相同的签署。

  • Java中所有对象都是一种java.lang.object等细节。

  • 被声明为protected的成员在相同包的类可以直接存取,不同包的类可以在继承后的子类直接存取。

  • 利用toString()方法返回字符串描述。

  • public:类内部可存取,相同包类可存取,不同包类可存取。

  • protected:类内部可存取,相同包类可存取,子类可存取
    无:类内部可存取,相同包类可存取,不同包类不可存取。

  • private:类内部可存取,相同包类不可存取,不同包类不可存取。

  • super关键字:想取得父类中的方法定义,可以在调用方法前加上

  • 可以使用super调用父类方法,不能定义为private(这就只限定在类内使用)。

  • 重新定义方法,子类对于父类中的方法权限,只能扩大不能缩小。

  • static方法没有多态。

  • super()和this()只能择一调用,而且要在构造函数第一行。

  • class前使用final关键字定义,表示这个类是最后一个了,不会再有子类,不能被继承。

  • 方法也可以被限定为final,表示最后一次定义方法,子类不可以再重新定义该方法。

  • java中任何类追溯至最上层父类,定义时没有使用继承,一定就是java.lang.Object,所有对象一定是一种Object,任何类型的对象,都可以使用Object的名称来参考。

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

  • 区分public、package、protected、private的关系:
    public private protected和package都是系统的实例变量的范围类型。

为了强制一个对象隐藏其数据,编译器限制实例变量范围以限制其在程序中的可见性。

具体区别如下:

  • private
    实例变量只能被声明它的类访问。

  • protected
    实例变量能被声明它的类和子类访问,所有没有显式制定范围的实例变量都是。

  • public
    实例变量可以被在任何地方访问。

  • package
    使用modern运行时,一个@package实例变量在实现这个类的可执行文件镜像中实际上是@public的,但是在外面就是@private。Objective-C中的@package与C语言中变量和函数的private_extern类似。任何在实现类的镜像之外的代码想使用这个实例变量都会引发link error这个类型最常用于框架类的实例变量,使用@private太限制,使用@protected或者@public又太开放。

(链接:https://zhidao.baidu.com/question/1990856800430686467.html)

上周考试错题总结

  • 错题1 System.out.println(52+25+””);的结果是(77)
  • 错题2 “30”转化为byte类型的30的语句是(Byte.parseByte(“30”);)
  • 错题3 Java中方法参数只用(传值)调用
  • 错题4 p86 Guess.java中guess的值无法输入12。(X)

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

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

  • 计划学习时间:10小时

  • 实际学习时间:6小时

  • 改进情况:

  • 有空多看看现代软件工程 课件 软件工程师能力自我评价表

参考资料

  • Java学习笔记(第8版)

  • 《Java学习笔记(第8版)》学习指导
  • ...

转载于:https://www.cnblogs.com/liuyiyang/p/6582354.html

20145209 2016-2017-2 《Java程序设计》第4周学习总结相关推荐

  1. 20175317 《Java程序设计》第一周学习总结

    20175317 <Java程序设计>第一周学习总结 教材学习内容总结 本周学习了Java大致的开发步骤,完成了课件自带的习题. 学习了在windows与Linux系统下不同的编译方法,掌 ...

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

    20155227 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 JDBC全名Java DataBase Connectivity,是java联 ...

  3. 20172318 2016-2017-2 《Java程序设计》第一周学习总结

    20172318 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 在教材中基本明白了计算机系统的运行方式,了解了对于高级语言是使用是掌握好编程的关键,掌握了一 ...

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

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

  5. 20175208 《Java程序设计》第九周学习总结

    20175208 2018-2019-2 <Java程序设计>第九周学习总结 一.教材学习内容总结: 第11章 JDBC与MySQL数据库 MySQL数据库管理系统 MySQL数据库管理系 ...

  6. 20175204 张湲祯 2018-2019-2《Java程序设计》第九周学习总结

    20175204 张湲祯 2018-2019-2<Java程序设计>第九周学习总结 教材学习内容总结 -第十一章JDBC和MySQL数据库要点: 1.下载MySQL和客户端管理工具navi ...

  7. 20155313 2016-2017-2 《Java程序设计》第二周学习总结

    20155313 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 1.1 基本类型 整数:可细分为short整数(占2字节).int整数(占4字节)与long ...

  8. 20155226 2016-2017-2 《Java程序设计》第一周学习总结

    20155226 2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 第一周主要学习了一二章的内容,也浏览了剩余章节,以下是本周主要学习内容总结 1.首先了解了[ ...

  9. 20172325 2018-2019-1 《Java程序设计》第二周学习总结

    20172325 2018-2019-1 <Java程序设计>第二周学习总结 教材学习内容总结 3.1集合 集合是一种聚集.组织了其他对象的对象.集合可以分为两大类:线性集合和非线性集合. ...

  10. 张旭升20162329 2006-2007-2 《Java程序设计》第一周学习总结

    20162329 2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 通过打书上的代码熟悉了Java编程的基本过程 教材学习中的问题和解决过程 1.因为我的虚拟机 ...

最新文章

  1. 位域 内存 字节序_JS操作内存?二进制数组了解一下
  2. 使用OpenCV实现摄像头测距
  3. 函数的重载与 泛型(generic)有什么不同?
  4. 5G NGC — GTPv1-U 协议的扩展
  5. linux上使用git把代码push到gitee上
  6. C#窗体应用中使用ZedGraph曲线插件绘制图表
  7. Redis:14---常用功能之(Pipeline)
  8. linux wait 子孙进程,Linux-进程基础
  9. SAP屏幕设计器专题:表格控件属性的设定(七)
  10. 财务有必要学python吗-财务人要学Python吗?
  11. SpringBoot整合Shiro(Java安全框架)案例(含源码)
  12. 理解RESTful架构(转)
  13. 实战总结的7个C程序,好东西不私藏
  14. 第四章 维纳滤波原理及自适应算法
  15. 地图定位--制作公司地图位置
  16. C3之text属性的补充
  17. 制作纯净的U盘启动盘(避免纯净系统安装后却内置垃圾软件)
  18. 张邦鑫:组织文化 - 价值观打造方法论初步
  19. arcmap fishnet 经纬度
  20. 基于微信小程序图书借阅管理系统(微信小程序毕业设计)

热门文章

  1. AI 高等数学、概率论基础
  2. 《jQuery Mobile入门经典》—— 2.2 展现CSS样式
  3. 30个要点帮你完成java代码优化
  4. windows 服务 定时程序 跑不出数据
  5. 如何在eclipse里使用git
  6. Orchard 之:Widget,兼看 Layer 在权限控制中的作用
  7. jquery 插件 分析
  8. (转载)Http Module 介绍
  9. JAVA——网络编程
  10. 数据治理注意哪些问题