多态

1.什么是多态,多态的前提是什么?
多态是事物在不同时刻表现出的不同形式.
前提是:要有继承关系,要重写方法,要有父类引用指向子类对象.
2.A:多态中的成员访问特点
a:成员变量
编译看左边,运行看左边。
b:构造方法
创建子类对象的时候,会访问父类的构造方法,对父类的数据进行初始化。
c:成员方法
编译看左边,运行看右边。
d:静态方法
编译看左边,运行看左边。
3.多态的优缺点
多态的好处
a:提高了代码的维护性(继承保证)
b:提高了代码的扩展性(由多态保证)
多态的坏处
不能使用子类特有的功能
4.抽象类是什么,抽象类的特点?
有抽象方法的类是抽象类,抽象方法是用abstract修饰,并且不给出方法体的方法.
特点:抽象方法用abstract修饰
抽象类不一定有抽象方法.有抽象方法一定是抽象类
抽象类不能直接实例化,可以用多态的方式,由具体的子类实例化
抽象类中可以有构造方法,用于子类访问父类数据时的初始化
抽象类的子类要么也是抽象类,要么是重写抽象类中的抽象方法
5.abstract不能和哪些关键字共存?
private 冲突
final 冲突
static 不能共存 无意义
6.抽象类和接口的区别?
抽象类 接口
成员变量:
可以是常量可以是变量 只能是常量
成员方法:
可以是抽象方法,可以是普通方法 只能是抽象方法
构造函数:
有构造函数 无构造函数
与类的关系 :
继承,只能单继承 实现,可以多实现,也可以先继承再实现.
7.关键字
Final
最终.可以用来修饰类和成员变量.被修饰的类不能被继承,被修饰的成员变量不能被修改,从某种意义上来讲,可以认为是常量
Abstract
抽象.用来修饰类或者方法.被修饰的类为抽象类.抽象类不能直接实例化,可以通过多态的形式实例化.抽象类的子类必须实现抽象类中的抽象方法.被修饰的方法为抽象方法,抽象方法不给出具体的实现过程.由子类来实现.有抽象方法一定是抽象类.抽象类里面不一定是抽象方法.
interface
接口.用来提供给类添加某种功能时用,接口中全是公共的静态的抽象方法.接口不可以实例化.接口的功能由实现他的类来实现,一个类可以实现多个接口.
Extends
继承.用来继承父类函数.子类可以使用extends来继承父类的非私有的成员方法和成员函数,不能继承父类的构造方法.是实现多态的前提条件之一.
implements
实现.用来实现接口的功能.一个类可以多实现.也可以同时继承和实现.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值