#  20155335    《Java程序设计》第四周学习总结

##  教材学习内容总结

继承,在本职上是特殊到一般的关系,即is—a关系,子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的方法和属性。

Java中所有的类都是通过直接或间接地继承java。Lang。Object类得到的,继承得到的称为子类,被继承的称为父类。

从类的结构看,子类不能继承父类访问权限为private的成员变量和方法,子类可以重复父类的方法,及的成员变量的命名可以与父类同名,java只支持单项继承,即一个类从多个超类派生的能力。其内部有四种形态(包括类属性和实例属性),方法(包括类方法和实例方法),构造器和初始化块(包括类的初始化和实例初始化块),对于继承中的初始化块顺序,又具体分为类的初始化和对象初始化。

类的初始化:

首先为类的所有类属性和类的初始化块分配内存空间,并在类首次初始化阶段中为其初始化,类属性和始化块之间的定义时顺序决定了初始化的顺序。若类存在父类,父类的类属性和类初始化块首先被初始化。

对象初始化

在new创建对象时,首先对对象属性和初始化快分配内存,并执行默认初始化,如果存在父类,则先为父类对象属性和初始化块先分配内存并执行初始化。

继承的语法是

修饰符    sth1  extends  sth2

{

//类定义部分

}

继承通过extends  关键字来实现的,前为子类,后者为父类。

如何理解多态

分装和继承为多态而准备,对多态的定义是允许不同类的对象对同一个命令作出相应,即同一命令可以根据发送对象的不同采用多种不同的行为方式(发送消息及函数调用)。只有满足三个必要条件,在能有多态的定义,这三个条件是(1)要有继承(2)要有重写  (3)父类引用指向子类对象。

如何理解接口

定义一个接口,接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法两部分组成。定义接口的基本格式如下:

[修饰符]interface  接口名  [extend  父接口名列表]{

[public][static][final]常量;

[public][abstract]    方法;

}

修饰符:可选,用于指定接口的访问权限,可选值为public

。接口名需要选择参数,用于指定接口的名称,接口必须是合法的java标识符,一般情况下要求首字母大写。Extends  父接口名列表:可选参数,用于指定定义的接口继承那个父接口。当extends被使用时,父接口名必选参数。

注意

与java类文件一样,接口文件的文件名必须与接口名相同。

接口被定义后,就可以在类中实现这个接口。在类中实现接口可以使用关键字,基本格式为

[修饰符]class<类名>[extends  父类名][接口列表]{

}

对于多态的理解:

同一操作作用于不同对象,可以有不同的解释,有不同的执行结果,简单来说就是:父类的引用指向子类对象。

多态的分类

多态有四小类,强制的,重载的,参数的,参数的和包含的。

*强制的:一种隐式做类型转换的方法。

*重载的:将一个标志服作用域多个意义。

*参数的:为不同类型的参数提供相同操作。

*包含的:类包含关系的抽象操作。

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

-  1问题

操作数组对象P102页的运行结果前三个都为null

-  xx1解决方案

已知类类型的初始值都为null。

Integer  []  scores=new  Integer[3];建立的对象个数为0,。

-  xx2问题

如何让p135页的重载正确?

-  xx2解决方案

将第六行中public  double  someMethod(int  i)改为

Public  double  someMethod(float  i)

-  ...

-  ...

##  [代码托管](链接)

-  代码提交过程截图:

-  运行  git  log  --pretty=format:"%h  -  %an,  %cd  :  %s"  并截图

-  代码量截图:

-  运行  find  src  -name  "*.java"  |  xargs  cat  |  grep  -v  ^$  |  wc  -l  并截图

##  上周考试错题总结

-  错题1及原因  第4题

System.out.printf(“”52+25)的结果是5225

-  错题2及原因  第16题int  []  scores=Arrays.copyof(scores1,scores1.length),输出的第二行只有前五个元素,修改后的代码为int[]scores=Arrays.copyOf(scores1,5)

-  错题3  第27题

Java中如果将一个方法申明为私有,即通过private关键字来修饰,也就意味着该方法只能由这个类本身调用,构造方法类似于常规,同样可以被三个关键词修饰,但是不能有返回值,可以人为地申明为private,其他类不能直接调用该类生成新的对象,这种情况,该类只有一个对象实例。

2016-2017 2 20155335《java程序设计》第四周总结的更多相关文章

  1. Java程序设计第四周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 答:①String类是final类,不能定义String的子类. ② instanceof ...

  2. 对于“2017面向对象程序设计(JAVA)第四周学习总结”存在问题的反馈

    对于“2017面向对象程序设计(JAVA)第四周学习总结”存在问题的反馈 “这部分同学博文总结没有写,实验作业没有提交.”——1.关于博文作业.实验作业教学功能的正解:学习知识.暴露问题.衔接课上.2 ...

  3. 20165318 2017-2018-2 《Java程序设计》第四周学习总结

    20165318 2017-2018-2 <Java程序设计>第四周学习总结 IDEA安装 按照娄老师Intellj IDEA 简易教程,我下载了IDEA但是由于没有注册学校邮箱,我没办法 ...

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

    20145213<Java程序设计>第四周学习总结 教材学习内容总结 本周任务是学习面向对象的继承.接口以及之后的如何活用多态.(还真是路漫漫其修远兮啊!)教材也是延续上周艰深晦涩的语言风 ...

  5. 20145330《Java程序设计》第四周学习总结

    20145330<Java程序设计>第四周学习总结 一周两章新知识的自学与理解真的是很考验和锻炼我们,也对前面几章我们的学习进行了检测,遇到忘记和不懂的知识就再复习前面的,如此巩固也让我对 ...

  6. 20145337《Java程序设计》第四周学习总结

    20145337<Java程序设计>第四周学习总结 教材学习内容总结 继承与多态 继承 继承,避免多个类间重复定义共同行为 符合DRY(Don't Repeat Yourself)原则,多 ...

  7. 20145225《Java程序设计》 2015—2016年学期课程总结

    20145225<Java程序设计> 2015—2016年学期课程总结 读书笔记链接汇总 1.2016年2月25日 <Java程序设计>课程准备之问卷调查 摘要: 一.你对自己 ...

  8. 20145218 《Java程序设计》第四周学习总结

    20145218 <Java程序设计>第四周学习总结 教材学习内容总结 继承 继承共同行为 继承基本上就是避免多个类间重复定义共同行为. 继承的三个好处:减少代码冗余:维护变得简单:扩展变 ...

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

    20145224-陈颢文 <Java程序设计>第四周学习总结 教材学习内容总结 第六章 继承与多态 ·继承就是面向对象中,子类继承父类,避免重复的行为定义.重复再程序设计上是非常不好的信号 ...

随机推荐

  1. Mac OS安装Scrapy失败

    报错: DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be re ...

  2. Zigbee安全基础篇Part.3

    原文地址: https://www.4hou.com/wireless/14294.html 导语:在之前的文章中提供了ZigBee协议及其安全功能的简要概述.在本文中,我们将探讨可在ZigBee网络 ...

  3. 敏捷冲刺Day2

    一. 每日会议 1. 照片 2. 昨日完成工作 网页设计与实现的完善 服务器的搭建前期--申请域名 激活域名 搭建服务器 分析接下来的任务与进度 总结前两天的工作 对产品的进一步展望 3. 今日完成工 ...

  4. sublime Remote_encoding cp1252

    "remote_encoding": "cp1252",才能连接远程ftp

  5. django为model设置表名

    class redis_data(models.Model):     class Meta:         db_table='redis_data'     key=models.CharFie ...

  6. Python爬虫requests判断请求超时并重新发送请求

     下面是简单的一个重复请求过程,更高级更简单的请移步本博客: https://www.cnblogs.com/fanjp666888/p/9796943.html  在爬虫的执行当中,总会遇到请求连接 ...

  7. Delphi中Self和Sender的区别

    在事件处理程序参数表中,至少含有一个参数Sender,它代表触发事件处理程序的构件,如在上例中,Sender就指Button2,有了Sender参数,可以使多个构件共用相同的事件处理程序,如下例:   ...

  8. 转:浅谈深度学习(Deep Learning)的基本思想和方法

    浅谈深度学习(Deep Learning)的基本思想和方法  参考:http://blog.csdn.net/xianlingmao/article/details/8478562 深度学习(Deep ...

  9. Elasticsearch 更新索引settings

    1.更新索引设置:将副本减至0,修改索引分析器为ik_max_word和检索分词器为ik_smart 2.需要先将索引关闭,然后再PUT setings POST user/_close PUT us ...

  10. PhoneGap API介绍:Camera

    本文将介绍PhoneGap API——Camera:使用设备的摄像头采集照片,对象提供对设备默认摄像头应用程序的访问. 方法: camera.getPicture 参数: cameraSuccess ...