打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
类的继承和重写方法

1 问题

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

2 方法

首先得在父类中创建一个方法,利用创建的方法的格式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,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Java继承中属性、方法和对象的关系
多态
多态的概述和前提条件
设计模式学习笔记——工厂方法模式
C#中易混淆概念:抽象类,抽象方法
子类对象的实例化过程
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服