#  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. javaweb引用jar类库的问题

    JAVAWEB中,需要引用的jar类库必须放在/WebContent/WEB-INF/lib文件夹中.不然就会各种报错.

  2. .net 简体转换繁体实例,繁体转换简体 Encode.dll、下载

    在项目中先引用Encode.dll  下面是下载地址: Encode.dll ChineseConverter.dll 1.html页面代码 <%@ Page Language="C# ...

  3. 【week6】约跑App视频链接

    约跑视频链接发布在优酷,链接如下: http://v.youku.com/v_show/id_XMTc3NTcyNTcyNA==.html 秒拍视频连接: http://www.miaopai.com ...

  4. 【Docker 教程】- Docker 架构

    1.Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器. 2.Docker 容器通过 Docker 镜像来创建. 3.容器与镜像的关系类似于面向对象编程 ...

  5. Matlab快捷键

    1. 在命令窗口(Command Window)中: 1) [上.下键]――切换到之前.之后的命令,可以重复按多次来达到你想要的命令 2) clc――清除命令窗口显示的语句,此命令并不清空当前工作区的 ...

  6. go的IO函数,整理下最基本的IO处理函数,工欲善其事必先利其器

    bufio.NewScanner()函数是一行一行地读,但是对/proc/函数,这里不是个好方法,最好是把所有的数据一次读完,然后再去读,有没有这样读的接口呢?把所有数据都读入到内存中然后再通过通过搜 ...

  7. RT-thread内核之邮箱

    一.邮箱控制块:在include/rtdef.h中 #ifdef RT_USING_MAILBOX /** * mailbox structure */ struct rt_mailbox { str ...

  8. 【bzoj1304】[CQOI2009]叶子的染色 树形dp

    题目描述 给一棵m个结点的无根树,你可以选择一个度数大于1的结点作为根,然后给一些结点(根.内部结点和叶子均可)着以黑色或白色.你的着色方案应该保证根结点到每个叶子的简单路径上都至少包含一个有色结点( ...

  9. Luogu2540 斗地主增强版(搜索+动态规划)

    单纯的暴搜似乎还是很好写的,然而过不了.出完顺子之后答案是可以dp出来的,于是大力搜然后大力dp就好了. dp时强行讨论完了几乎所有拆牌情况,理性愉悦一发. #include<iostream& ...

  10. kafka搭建笔记

    环境CentOS7.0,JDK1.8 一.下载安装 在kafka官网 http://kafka.apache.org/downloads下载到最新的kafka安装包 下载 2.0.0 release, ...