import关键字:导入
注意事项:如果在源文件中,使用了不同包下的同名的类,则必须字少有一个类需要以全类名的方式显示
一、继承
1、继承 关键字为extends
2、格式:类名 extends 类名
3、规定
(1)一个类可以被多个子类继承,但是只能继承一个父类
(2)子类直接继承的父类叫做直接父类,间接继承的父类叫做间接父类
(3)子类继承父类后就会获取了父类中声明的属性和方法(包括直接父类和间接父类)
二、方法的重写
概念:子类继承父类后,可以对父类中的同名同参数的方法,进行覆盖操作
应用:当创建一个子类对象的时候,调用父类中的同名同参数的方法时,实际执行的是子类重写的方法
规定:方法名和形参列表是相同的
权限修饰符:子类的权限修饰符不小于父类被重写的方法的权限修饰符,但是子类不能重写父类中被private修饰的方法
返回值类型:
void,基本数据类型:子父类必须相同
引用数据类型:父类被重写的返回值类型是A类型,子类重写的方法的返回值可以是A和A的子类
三、多态**
1、理解
可以为一个事物的多种形态
2、概念
对象的多态性:父类的引用指向子类的对象
3、前提
类的继承关系,方法的重写
4.使用
编译器只能调用父类中声明的方法,但是运行期执行的是子类重写的方法
即编译看左边,运行看右边
四、super关键字
理解为父类的
当子类和父类定义同名的属性或者重写父类的方法,在子类中调用父类的属性和被重写的方法时,需要使用super.属性或方法的方式来表明被调用的是父类中的属性或者方法
调构造器的方式和this关键字类似,但是针对于this(形参列表)或super(形参列表)只能二选一,不能同时出现
五、向下转型(强制类型转换)
instanceof关键字
a instanceof A:判断对象a是否是类A的实例,返回的是一个布尔值
使用场景:在向下转型之前,用instanceof 判断
注意事项:多态创建的子类对象不能强转成跟子类无关的对象(同属于父类)
本文章为本人复习面向对象所写,参考了尚硅谷的课程