#  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. android平台蓝牙编程(转)

    http://blog.csdn.net/pwei007/article/details/6015907 Android平台支持蓝牙网络协议栈,实现蓝牙设备之间数据的无线传输. 本文档描述了怎样利用a ...

  2. vs调试时报503错误

    开发中遇到了一个神问题,困扰了几个月没解决. 在本机调试,或者用iis服务器直接指向项目目录,访问网页任何页面都是报503. 一直找不到原因,配置文件也修改了,还是解决不了. 今天20170110一次 ...

  3. ejabberd学习1

    ejabberd是XMPP协议的一个实现,对大家的另一个意义就是,可以通过ejabberd来学习erlang. 1.从源码安装ejabberd. 可以参考ejabberd 简明配置.这个博文包括了安装 ...

  4. Zigbee安全基础篇Part.3

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

  5. PokeCats开发者日志(九)

      现在是PokeCats游戏开发的第十五天的中午,总算过了规范性检查这一关. 但愿能过吧.

  6. ASP.NET MVC4计划任务实现方法(定时执行某个功能)

    系统中定时执行某个任务是比较常用的功能,如一个部门定期向上级部门上报数据是一个典型的例子,下面就简单说说在.net mvc中如何实现定时执行某个功能的方法. 1.首先修改Glocal.asax文件,在 ...

  7. 【Python】面向对象--类的特殊成员方法

    类的特殊成员方法 1. __doc__ 表示类的描述信息 class Func(object): '''__doc__方法是用来打印类的描述信息''' def tell(self): pass def ...

  8. bzoj1069-最大土地面积

    题目 给定\(n\ (n\le 2000)\)个坐标,求四个坐标使得围起来的四边形面积最大. 分析 最暴力的想法是枚举四个点,然而肯定超时.接着不知道怎么想到中途相遇,然而一点关系都没有.这里用到了一 ...

  9. 在Linux上编译TCMalloc

    TCMalloc(Thread-Caching Malloc)与标准glibc库的malloc实现一样的功能,但是TCMalloc在效率和速度效率都比标准malloc高很多.TCMalloc是goog ...

  10. CentOS vi编辑器简单备忘

    1.常用编辑命令 dd 删除(剪切)光标所在整行 5dd 删除(剪切)从光标处开始的 5 行 yy 复制光标所在整行 5yy 复制从光标处开始的 5 行 n 显示搜索命令定位到的下一个字符串 N 显示 ...