类的继承和重写方法

简介: 类的继承和重写方法

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,自己重写方法即可。

目录
相关文章
C# 继承类中(父类与子类)构造函数的调用顺序
C# 继承类中(父类与子类)构造函数的调用顺序
|
9月前
|
Java
Java方法继承、方法重载、方法覆盖总结
总之,继承实现类的层次结构,方法重载提供方法的多样性,方法覆盖实现多态性。这些概念是面向对象编程的核心,用于实现代码的结构、灵活性和可维护性。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
49 0
|
9月前
|
Java 编译器
【JAVA面向对象编程】--- 探索子类如何继承父类
【JAVA面向对象编程】--- 探索子类如何继承父类
48 0
重写前奏~继承和多态
上次说到的重载是指同一类中方法和方法之间的关系,这次向大家介绍的重写是子不同类中方法和方法的关系;在介绍重写之前,要先说说继承和多态;
|
开发者 Python
子类重写父类方法|学习笔记
快速学习子类重写父类方法,先来介绍子类重写父类方法。多态其实就是一种子类重写父类的方法。
|
Java C++
【C++ 语言】面向对象 ( 继承 | 重写 | 子类调用父类方法 | 静态多态 | 动态多态 | 虚函数 | 纯虚函数 )(二)
【C++ 语言】面向对象 ( 继承 | 重写 | 子类调用父类方法 | 静态多态 | 动态多态 | 虚函数 | 纯虚函数 )(二)
251 0
|
Java C++
【C++ 语言】面向对象 ( 继承 | 重写 | 子类调用父类方法 | 静态多态 | 动态多态 | 虚函数 | 纯虚函数 )(一)
【C++ 语言】面向对象 ( 继承 | 重写 | 子类调用父类方法 | 静态多态 | 动态多态 | 虚函数 | 纯虚函数 )(一)
2391 0