# 20175227张雪莹 2018-2019-2 《Java程序设计》第四周学习总结

Posted zxy20175227

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了# 20175227张雪莹 2018-2019-2 《Java程序设计》第四周学习总结相关的知识,希望对你有一定的参考价值。

20175227张雪莹 2018-2019-2 《Java程序设计》第四周学习总结

教材学习内容总结

一、子类和父类。

1、子类只继承父类中的protected和public访问权限的成员变量(方法)作为子类的成员变量(方法)。

2、若A->B->C->D,
在Other类中用D类中protected的成员变量和方法创建对象object,则两个类需处于同一个包中;

在Other类中用D类继承A类中protected的成员变量和方法创建对象object,则A类和Other类需处于同一个包中;

3、所有类的祖先类时Object类。

二、成员变量的隐藏和方法重写:编写子类时,所声明的成员变量的名字和从父类继承来的成员变量的名字相同,子类会隐藏所继承的成员变量。

Ps:1、就是以子类中成员变量和重写的方法为准;

2、重写方法时,方法类型(或是子类类型是父类类型的子类 书P121)、名字不变;

3、重写方法时,方法的访问权限值允许提高,不允许降低;(权限排序:public,protected,友好的,private)

三、super关键字。

在子类的构造方法中,没有明显地写出super来调用父类的某个构造方法时,默认有super()

Ps:在父类中定义多个构造方法时,应当包括一个不带参数的构造方法,以防子类省略super时出错。

四、对象的上转型对象。

若Animal类是Tiger类的父类,当用子类创建一个对象,并把这个对象的引用放到父类的对象中,两种声明:

Animal a;
a=new Tiger();

Animal a;
Tiger b=new Tiger();
a=b;//a是b的上转型对象

Ps:1、可以将上转型对象强制转换到一个子类对象;
2、不可以将父类创建的对象的引用赋值给子类声明的对象(“人是中国人”);

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

  • 问题1:编译CheapGoods.java时找不到类。
    技术图片

  • 问题1解决方案:直接进入三个源文件所在文件夹编译运行Example5_3.java即可。
  • 问题2:编译时遇到如下图问题,改用进源文件所在文件夹中编译,该问题仍未解决。
    技术图片
    技术图片

  • 问题2解决方案:直接运行即可。(???)

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

  • 问题1:程序Example5_8.java,有无super(number,name)的区别:

技术图片
技术图片
技术图片

  • 问题1解决方案:若没有super(number,name),则不调用父类Student中方法Student,就没有输出何晓林和他的学号。

[代码托管]https://gitee.com/zxy20175227/week4

技术图片

上周考试错题总结

  • 错题1

下列关于实例方法和类方法的叙述,正确的是

A .类方法不可以操作实例变量,因为在类创建对象之前,实例成员变量还没有分配内存。

B .当创建第一个对象时,类中的实例方法就分配了入口地址,当再创建对象时,不再分配入口地址。

C .实例方法不能通过类名调用,只能由对象来调用。

D .不必创建对象就可以用类名直接调用static方法。

正确答案: A B C D 你的答案: B

  • 错题2

下列说法正确的是

A .println()方法属于java.lang.,但由于其非常常用,编译器自动添加了java.lang.,因此使用println()方法时不需要import。

B .如果一个文件中有class的定义、import、package,则其先后顺序为import、package、class。

C .可以使用import java.*;将类库中的所有的类都包含进去。

D .java.math提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类。

正确答案: A D 你的答案: A B D

原因:B项:先后顺序为package、import、class。

结对及互评

点评模板:

  • 博客中值得学习的或问题:
    • xxx
    • xxx
    • ...
  • 代码中值得学习的或问题:
    • xxx
    • xxx
    • ...
  • 基于评分标准,我给本博客打分:XX分。得分情况如下:xxx

  • 参考示例

点评过的同学博客和代码

感悟

1、在编译运行代码时,有多个源文件的只用编译运行含主类的源文件即可;

2、在书上有很多地方提示你可以自行更改程序,以便对比区别来达到学习的目的,看书要仔细;

3、根据博客园班级中一位同学的博客,对虚拟机的共享粘贴板进行了设置,实现了可以双向复制粘贴,为学习提供了很大便利。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
第一周 11/11 1/1
第二周 262/273 1/2
第三周 642/915 1/3
第四周 384/1299 1/4

参考资料

  • [Java2实用教程(第5版)]

以上是关于# 20175227张雪莹 2018-2019-2 《Java程序设计》第四周学习总结的主要内容,如果未能解决你的问题,请参考以下文章

20175227张雪莹 2018-2019-2 《Java程序设计》第十一周学习总结

20175227张雪莹 2018-2019-2 《Java程序设计》第八周学习总结

2019-2020-1 20175227张雪莹《信息安全系统设计基础》实验三 《并发程序》

2019-2020-1 20175227张雪莹《信息安全系统设计基础》 实验四 《外设驱动程序设计》

2019-2020-2 20175227张雪莹《网络对抗技术》Exp6 MSF基础应用

运行ConnectionDemo时遇到的问题及解决方案