Java基础复习(八)面向对象的三大特征

Java基础复习(八)面向对象的三大特征

三. 多态

1.什么是多态

如果类之间有继承关系,可以使用父类类型的声明变量,来保存(指向)子类对象的引用,因为子类覆盖了子类的方法,当变量指向不同的子类时,调用方法会得到不同的结果,这就是多态。

2.多态性的优点

1.应用程序不必为每个派生类编写功能调用,只要对抽象基类进行处理即可;
2.派生类的功能,可以被基类的引用变量引用,这叫做向后兼容,可以提高程序的可扩充型和可维护性。

3.方法的覆盖(Override)与方法的重载(OverLoad)的异同

不同点:1.方法的重载是针对同一个类内部,方法名相同,参数列表不同,返回值不管;
2.方法的覆盖是针对继承关系,子类覆盖父类中的同名方法,方法名相同,返回值类型相同,参数列表也相同。
相同点:都是相同功能的不同实现。

4."=="与"equals"的区别

"=="是直接比较的两个对象的堆内存地址,如果相等,则说明这两个引用实际是指向同一个对象地址的。

在Object类型的equals方法是直接通过“==”来比较的, 和前一种比较一样。而被String类重写过后的equals比较的是字符串内容

5.关于final关键字

1.用final修饰的变量表示常量,只能被赋值一次,final既可以修饰成员变量,也可以修饰局部变量,形参,且被final修饰的变量必须由程序员显示地指定初始值;
2.final修饰基本类型变量,不能对该变量重新赋值,因此基本类型变量不能改变。但是,引用类型变量保存的只是引用,final只保证引用变量引用的内存地址不变,即一直引用同一个对象,但这个被引用的对象是完全可以发生改变的;
3.用final修饰的方法不能被子类的方法覆盖;
4.用final修饰的类不能被继承

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值