<Java学习笔记>方法的重载、重写和this、super

方法的重载,是指在同一类或其父类中存在多个相同名字的方法。这些方法的参数表不同,当实例对象调用该方法时,会根据传递的参数选择相应的方法。参数表包括参数类型、个数以及顺序。

构造方法同样存在重载的概念。当类中存在多个构造方法时,根据创建实例对象时传递的参数,调用相应的构造方法。另外,在构造方法的定义中,还可以调用本类的其他构造函数,此时使用关键字 this 。this表示构造方法自身的名称,根据this后面的小括号中参数表,来确定调用的构造方法。

this还有另外一种用法。在类的方法中访问类的成员变量时,使用 this.成员变量 指明操作对象。


在子类中编写了一个方法,该方法的方法名、参数表和返回类型与父类中的某一方法完全一致,此时在子类中调用方法将会屏蔽父类中的该方法,这是方法的重写。使用方法重写可以使从父类继承的方法执行与父类不同的操作。

在子类中又想使用被隐藏的父类的方法时,可以使用 super.方法名。

另外,super 关键字还能帮助子类调用父类的构造方法。定义子类时,子类不会继承父类的构造方法。在定义子类的构造函数时,实际上,系统会在代码的最前端隐性地写上 super() ,它代表调用一次父类中不带参数的构造方法(若父类中不存在不带参数的构造方法,此时编译会报错)。如果我们显性地写出 super(参数表),原先隐形存在的 super() 则会被屏蔽,这时就可以使用 super(参数表) 调用自己希望的父类的构造函数。需要注意的是,super 的使用必须在构造函数的开头位置。这是因为,Java 处于安全性考虑,要求一个父类的对象要在子类运行前完全初始化。

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值