Java - 继承、方法重写

2022-06-11  本文已影响0人  aven_kang

继承

子类需要继承父类,需要加上关键字extends
java不支持多继承
public class Person {
    

    String name;
    int age;

    Person(String name,int age) {


    }

    public void show() {

        System.out.print(this.name);

    }

}
public class worker extends Person{
    
    worker(int index,String name,int age){
        super(name, age);
        this.name = name;
        this.age = age;
    }

    @Override
    public void show() {
        // TODO Auto-generated method stub
        super.show();

    }

    public static void main(String[] args) {
        
        worker work = new worker(30,"rose", 30);
        // work.age = work.age;
        work.show();
        // System.out.print(work.name);
        // System.out.print(work.age);
    }

    
}

在代码中,我们看到Perosn类是有一个方法show,如果子类想要重写,直接敲出show点击回车,IDE会自动帮我们补全并在方法上方加上@override关键字,表明是重写父类的方法

如果Person类中有一个方法


    public Person eat() {

        Person p1 = new Person("jack", 30);
        return  p1;
        
    }

那么如果work这个类继承过来,通过自动补全的话,代码会是这个样子

    @Override
    public Person eat() {
        // TODO Auto-generated method stub
        return super.eat();
    }

但是我们又不想返回Person这个类,也是可以返回work这个类对象的,因为work继承自Person,修改后的代码如下

    @Override
    public worker eat() {
        // TODO Auto-generated method stub
        worker w1 = new worker(30, "zhangsan", 30);
        return w1;
    }
上一篇 下一篇

猜你喜欢

热点阅读