#4JAVA面向对象-多态#

学习目标:多态概念 重写重载 子父类转换

博主理解:方法的多态,重写重载,对象的多态性, 子父类的转换
需要注意的是重载重写都是执行子类执行父类的方法同样的方法,和子父类的转换,减少代码复用提高效率而设计的。

话题;
1.重载和重写的区别?
一张图就概括了一切相关的理论问题
重载和重写
2.重载 (在同一个类中)

/*这就是基本的重载*/    
    public void tell(int i ){       
    }
    public void tell(String i ){    
    }

满足: 方法名字相同,
类型参数.个数不同的方法定义要求;
目的: 实现方法的不同功能 注意: 和返回值毫无关系

重写 (继承关系中)

class A{
    public  void tell(){
        System.out.println("父类的方法");
    }
}
class B extends A{
    public void tell(){
        super.tell();//1.super(超级代表的是父类的方法)
        System.out.println("子类重写的方法");
    }
}

满足: 方法名字,类型参数,个数完全相同的要求
目的: [代码的复用,也就是多态的含义])
注意: 和返回值毫无关系>

有重写是由于继承而引用的,那么这自然就是为了设计的需要了。在实际的项目过程中,要经常运用到多态的特性(可参考设计模式),重写就必不可少了。

转型:转型并不是赋值而是类型彻底的改变

向上转型:父类对象=子类实例,
向下转型:子类对象=(子类)父类实例

注意:先上后下 ,如果发生重写 父类执行的依然是子类的方法
如图:向上转型中 父类Text1.t2() 执行的子类重写方法
向下转型中 子类Text2.t2() 执行的是父类调用的方法

这里写图片描述

总结:多态概念是编程思想的重要部愤怒 重写,重载多为实用

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值