创建继承和方法重写

来源:互联网 发布:遥远的救世主 知乎 编辑:程序博客网 时间:2024/05/17 09:36
package d;class person{//创建父类Person    String name;    String sex;    int age;    int score;//3~6行:定义父类中的变量    void getInfo(String n,String s,int a,int m) {        name=n;        sex=s;        age=a;        score=m;    }//7~12行:定义方法getInfo(),获取个人信息    void showInfo() {        System.out.println("姓名:"+name);        System.out.println("性别:"+sex);        System.out.println("年龄:"+age);        System.out.println("成绩:"+score);    }//13~18行:定义方法showInfo(),显示个人信息}public class student extends person {//创建子类Student继承父类Person    String id;    String school;//23~24行:定义子类变量    void setInfo(String num,String school_name) {        id=num;        school=school_name;    }//25~28行:定义方法setInfo(),获取学生的信息    void setInfo() {        System.out.println("学校:"+school);        System.out.println("学号:"+id);        System.out.println("姓名:"+name);        System.out.println("性别:"+sex);        System.out.println("年龄:"+age);        System.out.println("成绩:"+score);    }//29~36行:用方法重写的方式,重写的方法showInfo(),输出学生信息    public static void main(String[] args) {        // TODO Auto-generated method stub        System.out.println("第一个人的信息");        student du=new student();        du.name="婷儿";        du.sex="女";        du.age=20;        du.score=96;        du.showInfo();//43~47行:创建属于类student的对象        System.out.println();        student li=new student();//42~49行:调用方法,输入和显示第一个学生的信息        System.out.println("第二个人的信息");        li.getInfo("朱儿","女",20,85);        li.setInfo("002","国足");        li.setInfo();//51~53行:调用对象,输入和显示第二个学生的信息    }}

运行结果:
这里写图片描述

知识要点:
1、方法重写:
a.方法重写是在继承中,子类重新定义父类的成员方法,使得新定义的方法具有和父类的成员方法相同的方法名、参数和返回值,但是具有不同的方法体。
b.方法重写可以实现同一方法在不同子类中的不同操作。
c.通过方法重写,子类对象只会调用子类中定义的方法,而不会调用父类中的同名方法。
2、成员变量的隐藏
在子类中定义与父类成员同名的变量。则可以实现该父类成员变量在子中的隐藏。
3、super关键字
在子类中有时需要使用父类的成员变量和成员方法,可以通过super关键字来实现。

原创粉丝点击