Java基础-继承(+重写)

java中通过继承,子类自动拥有了基类的所有成员变量和方法。
一、使用
(1)java中使用extends关键字实现类的继承,其语法规则为:
class [extends ]{ }
(2)在子类中,可以根据需要对从基类中继承来的方法进行重写。

class Person{
    private String name ;
    protected int age = 18 ;

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public int getAge() {
        return age;
    }

    protected void info(){
        System.out.println("name:"+ getName() +"\nage:" + getAge());
    }
}

class child extends Person{
    public String classmate;

    public void setClassmate(String classmate) {
        this.classmate = classmate;
    }

    public String getClassmate() {
        return classmate;
    }

    protected void info(){
        System.out.println("name:"+ getName() +"\nage:" + getAge() +"\nclassmate:"+ getClassmate());
    }
}


public class overWrite {
    public static void main(String args[])
    {
        child c = new child();
        c.setName("小宇");
        c.setAge(1);
        c.setClassmate("暂时还没有上学");
        c.info();

        Person p = new Person();
        p.setName("叶子");
        p.info();
    }
}

上面child类继承了Person类,同时重写了person中的info方法。
在这里插入图片描述

注意事项:
1.重写方法必须和被重写方法具有相同方法名称、参数列表和返回类型,为避免出错最好是copy代码,再进行重写(否则出现问题,排查起来比较麻烦)。
2.*重写(overwrite)是重新写一遍,重载(overload)是是同一个类下有多个相同名字得方法,两者是不一样的。
3.重写不能使用比被重写方法更严格的访问权限。
如Person中info是protected权限,child重写info如未private则将提示错误。
在这里插入图片描述
二、说明
Java只支持单继承,不允许多继承
一个子类只能有一个基类,一个基类可以派生出多个子类。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值