面向对象方法的特点2

方法重载

定义:一个方法可以有多个功能
条件:1.两个方法必须在同一个类里面
2.两个方法的方法名必须相同
3.两个方法的参数必须不同。
参数不同又分为三个部分
1.参数的类型不同
2.参数的个数不同
3.参数类型的顺序不同
注意:1.方法重载与修饰符和返回类型没有关系
2.如果子类中的一个方法与父类的一个方法是方法重载的话,则应该说,子类从父类中继承的方法和子类自己特有的方法是方法重载。

方法覆盖

定义:父类定义的方法如果子类不满意,可以写出方法覆盖原来的方法。

条件:要在继承关系中进行,如果子类觉得不满意可以覆盖原来的方法。

要求:子类的访问权限要 >= 父类的访问权限
返回类型,方法名,参数要和父类保持一致
子类抛出的异常范围要 <=父类抛出的异常范围

注意:对于方法覆盖的返回类型
jdk5.0之前 返回类型必须与父类一致
jdk5.0之后 返回类型可以是父方法返回类型的子类型(斜边返回)

注意:1.如果想在子类方法里面调用父类的方法使用super
格式:super.父类方法名
2.当使用方法覆盖时,为了保证子类中的方法一定覆盖父类中的方法,要在方法前面加上@Override

        Overload和Override之间的区别:
        1.含义不同:Overload是方法重载,Override是方法覆盖。
        2.发生的位置不同:Overload是必须在同一个类体里面,Override两个类的关系必须是继承关系。
        3.返回类型不同:Overload与返回类型无关,Override的返回类型即可以选择和父类一样,或者是斜边返回。
        4.参数不同:Overload的参数必须不同,Override的参数必须与父类相同
        5.作用不同:Overload的作用是满足用户的不同需求,Override的作用是让代码变得更优秀。

构造方法
定义:在创建方法时调用的方法。
作用:1.在创建对象的时候给属性赋值
2.在Java中只要是类都会有构造方法,默认是一个无参的构造方法,
3.如果自己创建构造方法并赋值,则默认的构造方法就会消失。
格式: public 类名(){}
注:构造方法中是没有返回类型的。

构造方法的首行:
super();
定义:在执行本构造方法之前先执行父类中的构造方法
默认值:默认值是无参的,且默认存在在构造方法的首行。
作用位置:必须在构造方法的首行,两个类必须是继承关系。
this();
定义:在执行本构造方法之前,先去执行本类中其他的构造方法。
默认值:无参的,且存在构造方法的首行。
作用位置:必须作用在本类中。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值