Day9
一、学习目标
1.继承性
2.成员变量的使用
3.方法的重载
4.super的用法
二、知识点
面向对象的三大特征:封装性、继承性、多态性,继承是多态的前提,如果没有继承就没有多态。
继承主要解决的问题就是:共性抽取。
1.继承关系中的特点:
(1)子类可以拥有父类的“内部”
(2)子类还可以拥有自己的专有内容
2.成员变量的使用
(1)直接使用成员变两量
(2)在类定义里面使用成员变量
3.方法的重载
(1)参数不一样方法重载
(2)子类和父类的方法完全一样
(3)调用重载方法时,Java将尝试调用一个参 数类型和数量与此方法的参数类型和数量相匹配的方法,如果不完全匹配,Java的自动类型转换功能将解决此问题.并调用正确的重载方法。
(4)方法重写Override
在子类中定义的一个方法,其名称、返回值类型和参数列表正好与父类中的某个方法的名称、返回值的类型和参数列表相匹配,说明子类的方法重写了父类的方法。
4.super的用法
(1)子类构造方法中有一个默认隐含的 super调用
(2)子类构造方法可以通过super来调用父类的重载构造方法
(3)子类一定会调用父类的构造方法,如果我们自己不写,编译器会赠送一个super
(4)如果我们自己写了可以通过super(),调用父类的重载构造方法
三、应用运行
1.继承性
代码如下所示
运行结果
2.成员变量的使用
代码如下所示
int numZi=20;
//int num=200;
System.out.println(zi.num);
左边new的谁,就先调用谁的成员变量
如果没有,再一次往父类找
运行如下
3.方法的重载
(1)参数不一样是方法重载
(2)子类和父类方法完全一样是方法重写
代码如下
运行结果
练习
以手机功能为例
手机原本功能
System.out.println(“显示号码”);
增加功能
运行结果
4.super的用法
(1)子类构造方法中,有一个默认隐含的 super () 调用,所以先调用父类的调用方法,在后执行子类的构造方法。
(2)子类构造方法可以通过super来调用父类的重载构造方法
代码示例
运行结果如下
将成员变量、super结合使用示例
(1)在子类的成员方法中,访问父类的成员变量
(2)System.out.println(num);
访问父类中的num
总结super的三种用法:
(1)在子类的成员方法中,访用父类的成员变量
(2)在子类的成员方法中,访用父类的成员方法
(3)在子类的构造方法中,访问父类的构造方法(包括重载方法)
2020080605051