20165323 第4周学习总结
教材学习内容总结
第五章
1、由继承得到的类称为子类,被继承的类称为父类
2、在类的声明中,通过使用关键字extends来定义一个类的子类,格式为:
class 子类名 extends 父类名 {
...
}
3、每个类有且仅有一个父类,一个类可以有多个或者零个子类
4、子类的继承性
5、如果子类和父类在同一个包中,那么,子类自然地继承了其父类中不是private的成员变量和方法作为自己的成员变量和方法,继承的成员变量或方法的访问权限保持不变;
当子类和父类不在同一个包中时,父类中的private和友好访问权限的成员变量不会被子类继承
6、一个类A中的protected成员变量和方法可以被它的子孙类继承
7、instanceof运算符:左面的操作元是对象,右面操作元是类
8、所声明的成员变量的名字和父类继承来的成员变量名字相同,此时,子类就会隐藏所继承的成员变量
9、子类隐藏继承的成员变量的特点
10、子类通过重写可以隐藏已继承的方法
11、重写的语法规则与目的
12、重写方法既可以操作继承的成员变量,调用继承的方法,也可以操作子类新声明的成员变量、调用新定义的其他方法,但无法操作被子类隐藏的成员变量和方法,若要使用,必须使用关键字super
13、重写父类的方法时,不允许降低方法的访问权限,但可以提高访问权限
14、子类在其构造方法中需使用super来调用父类的构造方法,而且super必须是子类构造方法中的头一条语句
15、final类不能被继承,既不能拥有子类
16、final方法不允许子类重写
17、final修饰成员变量或局部变量,它就是常量,声明时无默认值
18、abstract类可以有abstract方法,也可以有非abstract方法,但是非abstract类只有非abstract方法
第六章
1、定义接口:关键字interface
2、定义接口包含接口声明和接口体
3、接口体包含包含常量的声明和抽象方法
4、所有抽象方法的访问权限一定都是public
5、实现接口:使用关键字implements。实现多个接口时,用逗号隔开接口名
6、类在重写接口方法时不仅要去掉abstract修饰符、给出方法体,而且方法的访问权限一定要明显地用public来修饰
7、abstract类和接口都可以有abstract方法
8、接口中只可以有常量,不能有变量;而abstract类中都可以
9、abstract类中也可以有非abstract方法,接口不可以
代码托管
(https://gitee.com/BESTI-IS-JAVA-2018/java-besti-is-20165323/tree/master/src)