方法重载和方法重写

方法重写:子类重写父类方法(两同两小一大)
1、两同(方法签名相同)
    1)方法名相同
    2)参数列表相同
2、两小
    1)子类方法返回值类型跟父类返回值类型相同或者父类返回值子类型
    2)子类方法抛出异常类型跟父类抛出异常类型相同或者父类异常子类型
3、一大
    1)子类方法访问修饰符跟父类方法访问修饰符相同或者比父类方法更大权限访问修饰符

方法重载:同一类中方法名相同,方法参数里列表不同(参数个数,参数类型,参数顺序)
1、构造器重载
2、方法重载
方法重载只限定方法名相同,参数列表不同,对于访问修饰符,返回值,方法抛出异常可以不相同


代码测试

父类

public class FatherClass {

    private String name;


    public FatherClass() {
        System.out.println("Father's default constructor...");
    }

    public FatherClass(String name) {
        System.out.println("My name is " + name);
    }

    protected SonClass info(int a, String b) throws RuntimeException {
        return new SonClass();
    }

}

子类

public class SonClass extends FatherClass {

    private String name;

    public SonClass() {
        System.out.println("SonClass's default constructor ...");
    }

    public SonClass(String name) {
        System.out.println("son's name is " + name);
    }

    @Override
    public SonClass info(int a, String c) throws RuntimeException {
        return new SonClass();
    }

    public FatherClass call(int a, int b) throws Exception {
        return new FatherClass();
    }

    private SonClass call(int a, int b, int c) throws RuntimeException {
        return new SonClass();
    }

}


class ClassTest {
    public static void main(String[] args) {
        new SonClass("tom");
    }
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值