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

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

教材学习内容总结

第五章 子类与继承

子类与父类

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

子类与对象

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


instanceof 运算符

boolean a = 对象 instanceof 类

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


方法重写

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

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

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

public > protected > 友好的 > private


final 关键字

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

抽象类和抽象方法,关键字abstract

  • 抽象方法只能声明,不能实现
  • abstract类中可以有抽象和非抽象方法,普通方法中不能有抽象方法
  • 不能用static修饰abstract方法
  • 一个非abstract子类若是abstract类的子类,那么他必须重写父类的abstract方法

第六 接口与实现

关键字interface定义接口

  • 接口定义=接口声明+接口体
  • 接口体=常量的声明+抽象方法
  • 接口内所有常量的访问权限都是public,且都是static常量(关键字public,static,final可省略
  • public接口可被任何一个类实现,不加修饰词的接口默认为友好接口,被同一个包中的类实现


实现接口

  • 类实现接口
class A implements Pringtable,Addable

用关键字implements跟在类声明后实现接口调用,如有多个接口,用,隔开

  • 重写接口中的方法
重写时需注意:
  1. 去掉abstract修饰符
  2. 给出方法体
  3. 访问权限写出public

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

  • 问题1:按照课本P156页输入代码后,会出现如下问题

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

代码托管

上周考试错题总结

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


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


  • 初始值i=1,进入case(1),输出c=J,因为没有break,所以继续执行case(2),然后跳出本次循环,执行i++,i=2,执行case(2);i=3,case(3)后继续执行执行default;i=4,执行default,所以答案是Jeep好好


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


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


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


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

参考资料

原文地址:https://www.cnblogs.com/zicerain/p/8646903.html