子类中继承父类的方法

电子说

1.3w人已加入

描述

1 问题

子类中如何继承父类的方法,或者如何重写方法。

2 方法

void

首先得在父类中创建一个方法,利用创建的方法的格式void+方法名(){},然后在子类中调用这个方法:直接输入方法名,再按enter,便会出现super.方法名(),表示调用该方法。当不想调用父类的方法时可直接删除super的调用,然后在方法中重新写。

例题:4、 请设计2个类,分别是学生类Student,本科生类Undergraduate,,其中Student类是一个抽象类,它包含一些基本的学生信息,如姓名、类别(本科生还是研究生)、所学课程(这里假定为3门课,用一维数组表示)成绩和成绩等级等,而Undergraduate类是Student类的子类.

package lab02;
public class Student {
   //属性
   String name;
   String type;//类别
   int[] courseScores;//三门课的成绩数组
   String grade;//平均成绩等级
   Student(){}
   Student(String name,String type,int[] courseScores){
       this.name=name;
       this.type=type;
       this.courseScores=courseScores;
   }
   void computeGrade(){
       System.out.println("Student:compute");
}
package lab02;
public class Undergraduate extends Student{
   Undergraduate(){}
   Undergraduate(String name,String type,int[] courseScores){
       super(name,type,courseScores);
   }
   @Override//该方法来自于父类,然后不适合子类(是直接写函数名再enter回车直接得来的)
   void computeGrade() {
//        super.computeGrade();//super表示执行父类方法
       System.out.println("Undergraduate:compute");
       Int avg=(this.courseScores[0]+this.courseScores[1]+this.courseScores[2])/3;
       if(avg>80){
           this.grade="优秀";
       }else if(avg>60){
           this.grade="良好";
       }else if(avg<60){
           this.grade="差";
       }
   }
}
package lab02;
public class Test04 {
   public static void main(String[] args) {
       Undergraduate zhang=new Undergraduate("张三","本科生",new int[]{90,95,100});
       zhang.computeGrade();
       System.out.println("等级:"+zhang.grade);

3 结语

针对继承父类的方法和重写方法的问题,我们的重点是理解如何调用函数的,如何在子类中使用该方法,要使用的父类的方法名加enter即可,当不想执行父类方法去掉super,自己重写方法即可。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分