20165218 2017-2018-1 《Java程序设计》第四周学习总结

时间:2023-02-21 21:57:50

20165218 2017-2018-1 《Java程序设计》第四周学习总结

教材学习内容总结

第五章 子类与继承

子类与父类

  • 通过关键字extands定义子类
class 子类 extands 父类{
    
}
  • 子类只能有一个父类,父类可以有多个子类
  • 子类继承父类的成员变量和方法
  • 子类和父类在同一包中:可以继承父类中不是private的成员变量和方法
  • 子类和父类不在同一包中:继承父类中protectedpublic的成员变量方法
  • 调用另一个类的protected变量和方法时,无论该变量或方法是否是继承的,当前类需要和该方法或变量所在的类在同一个包

子类与对象

用子类的的构造方法创建对象时,子类中声明的和父类中的成员变量都分配了内存空间,但是其中一部分对象无法调用


instanceof 运算符

boolean a = 对象 instanceof 类

若对象是该类或其子类创建的对象,a=true;反之为false


方法重写

如果子类可以继承父类的某个方法,那么子类就有权利重写这个方法。

重写时,方法名字、参数个数、参数类型,子类和父类的方法必须完全相同。

不允许降低方法的访问权限,但可以提高,从高到低依次是:

public > protected > 友好的 > private


final 关键字

修饰 含义
final类不能被继承,不能有子类
方法 final方法不能被子类重写
变量 常量,运行期间不许被更改

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

  • 问题1:按照课本P156页输入代码后,会出现如下问题
    20165218 2017-2018-1 《Java程序设计》第四周学习总结

  • 问题1解决方案:暂时没找到解决方案

代码托管

20165218 2017-2018-1 《Java程序设计》第四周学习总结

上周考试错题总结

  • 20165218 2017-2018-1 《Java程序设计》第四周学习总结

15和250的二进制分别是00001111和11111010,按位与是00001010,十进制为10(答案有误)

  • 20165218 2017-2018-1 《Java程序设计》第四周学习总结

short将byte类型的x强制转化为short类型,但y的精度更高,所以返回类型为double。错误原因,认为(short)影响了整个变量。

  • 20165218 2017-2018-1 《Java程序设计》第四周学习总结

初始值i=1,进入case(1),输出c=J,因为没有break,所以继续执行case(2),然后跳出本次循环,执行i++,i=2,执行case(2);i=3,case(3)后继续执行执行default;i=4,执行default,所以答案是Jeep好好
20165218 2017-2018-1 《Java程序设计》第四周学习总结

  • 20165218 2017-2018-1 《Java程序设计》第四周学习总结

byte占8bit;整型变量都不是无符号的;错误原因:没看到是多选题……

  • 20165218 2017-2018-1 《Java程序设计》第四周学习总结

二者相等,所以输出结果是true,答案是false

  • 20165218 2017-2018-1 《Java程序设计》第四周学习总结

ctrl+C退出运行,也是结束阻塞

  • 20165218 2017-2018-1 《Java程序设计》第四周学习总结

不可以使用双引号;不可以将多个字符赋给char型变量;\u前缀表示时,必须为十六进制

  • 20165218 2017-2018-1 《Java程序设计》第四周学习总结

参考资料