Java继承

来源:互联网 发布:网络爬虫是干嘛的 编辑:程序博客网 时间:2024/06/15 12:04

父类

package extendstest;/** * 父类 */public class Animal {    String name;    public Animal(){        System.out.println("调用了Animal 的无参数构造方法");    }    public void setName(String name) {        this.name = name;    }    public void getName(){        System.out.println("Animal:name="+name);    }}

子类

package extendstest;/** *子类 */public class Cat extends Animal {//    public void getName(){//        System.out.println("Cat的getName(),"+name);//    }    public Cat(){        System.out.println("调用了Cat类的构造方法 Cat()");    }    public static void main(String[] args) {        Cat cat = new Cat();        cat.setName("猫11"); //调用了父类的setName()方法        cat.getName();   //调用了父类的getName()方法    }}

输出:

调用了Animal 的无参数构造方法调用了Cat类的构造方法 Cat()Animal:name=猫11

===============在子类的方法getName()覆盖了父类的getName()==================

父类

package extendstest;/** * 父类 */public class Animal {    String name;    public Animal(){        System.out.println("调用了Animal 的无参数构造方法");    }    public void setName(String name) {        this.name = name;    }    public void getName(){        System.out.println("Animal:name="+name);    }}

子类

package extendstest;/** *子类 */public class Cat extends Animal {    public void getName(){        System.out.println("Cat的getName(),"+name);    }    public Cat(){        System.out.println("调用了Cat类的构造方法 Cat()");    }    public static void main(String[] args) {        Cat cat = new Cat();        cat.setName("猫11");        cat.getName();    }}


调用了Animal 的无参数构造方法调用了Cat类的构造方法 Cat()Cat的getName(),猫11

说明:

Java程序在执行子类的构造方法之前,会先自动调用父类中没有参数的构造方法,其目的是为了帮助继承自父类的成员做初始化操作。




原创粉丝点击